# Migrer vers Ondes PRO depuis un autre outil, avec l’API et l’IA

> Reprenez catalogue, clients et factures de votre ancien outil par l’API d’Ondes PRO : l’IA lit l’export, simule chaque écriture, importe par lots vérifiés.

Mis à jour le 2026-10-21 · L’équipe Ondes PRO · https://ondes.pro/fr/integrations/mcp/guides/migrer-vers-ondes-pro

Changer de logiciel de gestion bloque souvent sur un point : la reprise des données. Ce guide montre comment importer votre **catalogue**, vos **clients** et vos **factures en cours** dans Ondes PRO par l’**API REST**, en confiant à votre **assistant IA connecté par MCP** le travail ingrat — lire l’export, faire correspondre les colonnes, valider chaque ligne — et en n’écrivant pour de vrai qu’après une **simulation** propre.

## Que peut-on reprendre dans Ondes PRO, et dans quel ordre ?

Tout ce qui a une ressource d’écriture dans l’API v1 se reprend : catégories et produits de la boutique (`shop/categories`, `shop/produits`, puis `shop/images-produit` pour les galeries), composants de stock (`inventory/composants`), clients facturés (`billing/clients`), fiches de prospects (`crm/fiches`), devis et factures (`billing/devis`, `billing/lignes-devis`, `billing/factures`). L’ordre compte, parce que les objets se référencent : une catégorie avant ses produits, un client avant ses devis, un devis avant sa facture.

Dans Ondes PRO, **une facture naît d’un devis** et **ne se supprime jamais** : c’est l’obligation de conservation. Une erreur d’import sur une facture ne se rattrape donc pas d’un clic, d’où l’importance de la simulation décrite plus bas. Pour les factures déjà soldées, archiver les PDF de l’ancien outil dans le Drive suffit souvent ; reprendre les factures **impayées** permet en revanche de faire partir les relances depuis Ondes PRO.

## Importer vos données dans Ondes PRO, étape par étape

Exemple suivi tout au long du guide : Atelier Lumen reprend 412 produits, 1 380 clients et 37 factures en attente de paiement.

1. **Exportez depuis l’ancien outil** — Récupérez un fichier CSV par type d’objet : produits, clients, factures ouvertes avec leurs lignes. Gardez les identifiants d’origine dans une colonne : ils serviront de clés d’idempotence et de table de correspondance.
2. **Connectez votre assistant à votre espace** — Connectez Claude Code, Cursor ou un autre client MCP au serveur de votre espace par OAuth (voir [les clients compatibles](https://ondes.pro/fr/integrations/mcp/clients)). Pour un script autonome, créez plutôt une clé dédiée avec `shop:write` et `billing:write`, à révoquer une fois la migration terminée.

```bash
claude mcp add --transport http ondes https://votre-espace.ondes.pro/mcp/
```
3. **Faites établir la correspondance des colonnes** — Donnez l’export à l’assistant. Il lit la fiche de chaque ressource avec `ondes_ressource` — champs obligatoires, types, valeurs admises — et propose une table de correspondance : « Libellé » vers `name`, « PV HT » vers `price`, « Réf. » vers `sku`. Relisez-la : c’est le seul moment où un humain doit vraiment trancher.
4. **Simulez sur un échantillon** — Demandez à l’assistant de valider une dizaine de lignes avec `simuler: true` : le serveur vérifie chaque corps et répond comme pour une vraie création, sans rien enregistrer. Les formats fautifs (prix avec symbole, TVA écrite « 20 % », pays en toutes lettres) apparaissent ici, champ par champ.
5. **Importez par lots de 100** — `POST /api/v1/<ressource>/lot/` écrit jusqu’à 100 objets dans une transaction : si une ligne est refusée, le lot entier est annulé et la réponse désigne la ligne et la raison. Ajoutez une `Idempotency-Key` dérivée des identifiants d’origine du lot : relancer après une coupure ne crée aucun doublon.
6. **Reprenez la facturation en dernier** — Créez d’abord les devis et leurs lignes (le `numero` d’un devis est facultatif : laissé vide, il prend la séquence de la société), puis une facture par devis. Simulez chaque facture avant l’écriture réelle : une fois créée, elle ne se supprime plus.
7. **Contrôlez le résultat** — Comparez les totaux : nombre de produits, de clients, montant des factures en attente. Le filtre `?search=` de `shop/produits` (nom ou SKU) et de `billing/clients` (nom ou e-mail) retrouve rapidement une ligne manquante. L’assistant peut produire ce rapport de contrôle lui-même.

## L’assistant lit l’export et simule avant d’écrire

_Exemple de conversation · données de démonstration (Atelier Lumen)_

> **Vous** : Voici `export-produits.csv` (412 lignes). Importe-le dans la boutique, mais montre-moi d’abord ce qui coince.
>
> 🔧 `ondes_ressource` Fiche `shop/produits` : `name` et `price` obligatoires, `price` décimal, `compare_at_price` facultatif, `sku` facultatif.
>
> 🔧 `ondes_appeler` `POST shop/produits` avec `simuler: true` sur 10 lignes — 8 valides, 2 refusées : `price` invalide (« 245,00 € »).
>
> **Assistant** : La correspondance tient, à un détail près : la colonne « PV HT » contient le symbole euro et une virgule. Je la convertis en `245.00`. Les 14 lignes sans SKU (dont la Lampe Trépied noire) seront créées sans référence. J’importe en 5 lots de 100 et un de 12, chacun avec une clé d’idempotence tirée de l’identifiant d’origine ?
>
> **Vous** : Oui, en réel.
>
> 🔧 `ondes_appeler` `POST shop/produits/lot/` × 5 puis × 1 — mode réel annoncé, 412 produits créés, aucune ligne refusée.
>
> **Assistant** : 412 produits créés. Je passe aux catégories manquantes et aux images, ou aux clients ?

## Le corps d’un lot de clients

Chaque opération porte sa méthode et ses données ; un `id` n’est exigé que pour modifier ou supprimer un objet existant.

```bash
curl -X POST https://votre-espace.ondes.pro/api/v1/billing/clients/lot/ \
  -H "Authorization: ApiKey opk_…" \
  -H "Idempotency-Key: reprise-clients-lot-001" \
  -H "Content-Type: application/json" \
  -d '{
    "operations": [
      {"methode": "POST", "donnees": {"nom": "Brasserie La Canopée", "email": "compta@lacanopee.fr", "ville": "Nantes"}},
      {"methode": "POST", "donnees": {"nom": "Galerie Ressac", "societe": "Ressac SAS", "siret": "…", "ville": "Biarritz"}}
    ]
  }'
```

Cent opérations au plus par lot. Une seule refusée, et rien n’est écrit.

## Les pièges classiques d’une reprise de données

- **Les doublons de clients** : un même client saisi deux fois dans l’ancien outil. Dédoublonnez sur l’e-mail ou le SIRET avant l’import, l’assistant peut le faire sur le CSV.
- **Les montants TTC pris pour du HT** : les prix et lignes Ondes PRO sont saisis hors taxes, avec un taux de TVA par ligne. Vérifiez sur deux ou trois factures que les totaux recalculés tombent juste.
- **Les images** : elles se téléversent à part, en multipart, sur `shop/images-produit` une fois les produits créés. Un lot ne transporte pas de fichiers.
- **Les sociétés** : si votre espace porte des filiales, chaque objet appartient à la société de l’appel. Importez société par société, sans mélanger les fichiers.
- **La clé oubliée** : révoquez la clé de migration à la fin. Une connexion OAuth, elle, se coupe nommément depuis l’onglet MCP.

> **Une facture importée ne se supprime pas** — La facturation n’a pas de jumeau de test : l’écriture est réelle dès la première requête, et une facture émise ne s’annule qu’en émettant un **avoir**, avec motif obligatoire. Simulez donc chaque facture avec `simuler: true`, et commencez par les devis : un devis en brouillon se corrige librement.

## Et si je n’ai pas de développeur ?

Sans développeur, le même parcours se mène depuis Claude Desktop ou claude.ai : vous déposez l’export dans la conversation, l’assistant connecté à votre espace établit la correspondance, simule, puis importe après votre accord. Chaque écriture réelle est annoncée comme telle dans sa réponse.

Pour un volume important ou une reprise sur plusieurs sociétés, un accompagnement au démarrage est proposé en option (voir [les tarifs](https://ondes.pro/fr/pricing)). Et si vous voulez d’abord voir le produit avec des données réalistes, [la démo](https://ondes.pro/fr/demo) est ouverte 72 heures.

## Pour aller plus loin

- [Boutique en ligne](https://ondes.pro/fr/integrations/mcp/modules/boutique-en-ligne) — Commandes, catalogue, codes promo et expéditions pilotés par votre assistant, en mode test par défaut.
- [Facturation](https://ondes.pro/fr/integrations/mcp/modules/facturation) — Devis, factures, relances et avoirs préparés par votre assistant, dans le respect des règles de facturation.
- [Gestion des stocks](https://ondes.pro/fr/integrations/mcp/modules/gestion-des-stocks) — Niveaux, réceptions, nomenclatures et ordres de production consultés et préparés par votre assistant.
- [CRM](https://ondes.pro/fr/integrations/mcp/modules/crm) — Fiches clients, notes de suivi, pipeline et relances tenus à jour par votre assistant.

## Questions fréquentes

### Peut-on importer un catalogue de produits par l’API ?

Oui. Les catégories passent par `shop/categories`, les produits par `shop/produits` (nom et prix obligatoires, SKU facultatif) et les galeries par `shop/images-produit`. L’endpoint `lot/` en écrit jusqu’à 100 par transaction.

### Peut-on reprendre les factures de l’ancien logiciel ?

Oui, mais une facture Ondes PRO naît d’un devis et ne se supprime jamais. On crée donc le client, le devis et ses lignes, puis la facture, en simulant d’abord. Beaucoup d’entreprises ne reprennent que les factures impayées et archivent les autres en PDF.

### Comment éviter de créer deux fois les mêmes données si l’import s’interrompt ?

En envoyant une `Idempotency-Key` dérivée des identifiants d’origine sur chaque écriture ou chaque lot. Rejoué avec le même corps, l’appel renvoie la réponse déjà obtenue sans rien recréer.

### L’IA écrit-elle directement dans mes données ?

Seulement quand vous le demandez. Elle commence par lire les fiches des ressources et par simuler les écritures avec `simuler: true`, qui n’enregistre rien. Chaque réponse annonce si l’écriture était une simulation, un essai en mode test ou réelle.

### Que se passe-t-il si une ligne du lot est invalide ?

Le lot entier est annulé, rien n’est écrit, et la réponse indique quelle opération a échoué et pourquoi. Vous corrigez la ligne et relancez le lot sous une nouvelle clé d’idempotence : un corps modifié sous la même clé répondrait 409.

### Faut-il une offre particulière pour migrer par l’API ?

Non. L’API REST, l’endpoint de lot et le serveur MCP sont inclus dans toutes les offres Ondes PRO. Pour une reprise importante, un accompagnement au démarrage est proposé en option.
