Skip to content
Catégories:

Abonnements WooCommerce : comment exporter facilement vos abonnements

Post date:

Pourquoi exporter les abonnements WooCommerce ?

WooCommerce Subscriptions est l’extension qui vous permet de vendre des produits récurrents (abonnements, services, contenus) directement depuis votre boutique WordPress. Une fois les ventes lancées, il est souvent nécessaire d’extraire les données d’abonnement : pour les analyser, les importer dans un CRM, effectuer une migration ou simplement établir des rapports financiers. Exporter vos abonnements n’est pas toujours simple, car ils sont stockés dans plusieurs tables de bases de données et ne sont pas accessibles via les rapports WooCommerce standards. Cet article vous montre étape par étape comment obtenir une exportation complète, fiable et personnalisable que vous pouvez utiliser immédiatement.


Les différentes méthodes d’export

1. Exportation native via le tableau de bord WooCommerce

WooCommerce propose un outil d’exportation de commandes ; cependant, il ne répertorie pas directement les signatures. Toutefois, une signature est considérée comme un commande parente contenant des sous-commandes (renouvellements). En filtrant les commandes par type « abonnement », vous pouvez obtenir un CSV basique :

  1. WooCommerce → Commandes.
  2. Cliquez Filtre > Type de commande > sélectionnez Abonnement.
  3. Utilisez le bouton Exportateur (coin supérieur droit).
  4. Choisissez les colonnes souhaitées (date, client, statut, total, etc.).
  5. Téléchargez le fichier CSV.

Limite : Cette méthode ne fournit pas de métadonnées spécifiques à l’abonnement (prochaine date de facturation, mode de paiement récurrent, essais gratuits, etc.).

2. Utiliser un plugin dédié

Plusieurs extensions facilitent l’export complet :

Plugin Principales fonctionnalités Prix ​​(au moment de la rédaction)
Exportation CSV client/commande WooCommerce Export des commandes, abonnements, clients ; filtres avancés; planification des exportations automatiques À partir de 79$
WP All Export – Module complémentaire d’abonnements WooCommerce Interface glisser-déposer, prise en charge des champs personnalisés, exportation vers XML/CSV Module complémentaire de 49 $ (licence annuelle)
Exportateur de signatures (gratuit) Export CSV simple contenant les champs essentiels (ID, statut, date de début/fin, paiement) Gratuit

Procédure typique avec WP All Export :

  1. Installer et activer WP Toutes les exportationsalors le Module complémentaire d’abonnements WooCommerce .
  2. Dans le tableau de bord, choisissez Nouvelle exportation > Exportation de produits> Abonnements .
  3. Sélectionnez des colonnes par glisser-déposer (par exemple: _schedule_next_payment, _payment_method, _trial_end).
  4. Définissez des filtres (par statut, par date, par produit).
  5. Démarrez l’exportation et téléchargez le fichier CSV ou XML.

Cette solution vous donne un contrôle total sur le contenu des fichiers, ce qui est idéal pour les intégrations ERP ou CRM.

3. Exporter via une requête SQL personnalisée

Si vous avez accès à phpMyAdmin ou à un outil similaire, vous pouvez extraire les données directement de la base de données. Cette méthode est la plus robuste, car elle permet de récupérer chaque champ stocké dans les tables wp_posts, wp_postmeta et wp_woocommerce_subscriptions.

Exemple de requête

SELECT 
    p.ID                      AS subscription_id,
    p.post_date               AS date_creation,
    p.post_status             AS statut,
    pm_customer_id.meta_value AS client_id,
    u.user_email              AS email_client,
    pm_start_date.meta_value  AS date_debut,
    pm_trial_end.meta_value   AS date_fin_essai,
    pm_next_payment.meta_value AS prochaine_facturation,
    pm_total.meta_value       AS montant_total,
    pm_payment_method.meta_value AS methode_paiement
FROM wp_posts p
LEFT JOIN wp_postmeta pm_customer_id 
       ON p.ID = pm_customer_id.post_id AND pm_customer_id.meta_key = '_customer_user'
LEFT JOIN wp_users u 
       ON pm_customer_id.meta_value = u.ID
LEFT JOIN wp_postmeta pm_start_date 
       ON p.ID = pm_start_date.post_id AND pm_start_date.meta_key = '_schedule_start'
LEFT JOIN wp_postmeta pm_trial_end 
       ON p.ID = pm_trial_end.post_id AND pm_trial_end.meta_key = '_trial_end'
LEFT JOIN wp_postmeta pm_next_payment 
       ON p.ID = pm_next_payment.post_id AND pm_next_payment.meta_key = '_schedule_next_payment'
LEFT JOIN wp_postmeta pm_total 
       ON p.ID = pm_total.post_id AND pm_total.meta_key = '_order_total'
LEFT JOIN wp_postmeta pm_payment_method 
       ON p.ID = pm_payment_method.post_id AND pm_payment_method.meta_key = '_payment_method'
WHERE p.post_type = 'shop_subscription';
  • Pourquoi cette demande ?
    • post_type = 'shop_subscription' cible uniquement les abonnements.
    • LE LEFT JOIN récupérer les métadonnées essentielles.
    • Vous pouvez ajouter ou supprimer des champs selon vos besoins (ex.: _cancelled_date, _renewal_order_ids).

Une fois le résultat exporté (CSV via phpMyAdmin ou via la fonction SELECT ... INTO OUTFILE), vous disposez d’un tableau parfaitement adapté à tout type d’analyse.


Étapes pratiques pour un export fluide

1. Préparez votre environnement

Action Raison
Faire une sauvegarde de la base de données Évitez tout problème en cas de mauvaise manipulation.
Mettre le site en mode maintenance (facultatif) Évitez les enregistrements simultanés lors de l’exportation.
Vérifier les droits L’utilisateur MySQL doit être capable de lire les tables wp_posts, wp_postmeta.
Déterminer le format souhaité CSV pour Excel/Sheets, XML/JSON pour API.

2. Choisissez le niveau de détail

  • Exportation de base: ID, client, statut, dates importantes. Idéal pour des rapports rapides.
  • Exportation détaillée: Inclut les métadonnées de paiement (passerelle, ID de transaction), les coupons appliqués, les produits liés. Requis pour les audits financiers ou les migrations complexes.

3. Testez sur un petit ensemble de données

Avant d’exécuter une exportation complète, limitez la requête ou les filtres à 10 à 20 enregistrements et ouvrez le fichier dans Excel. Pour vérifier :

  • La présence de toutes les colonnes attendues.
  • Le format de date (AAAA‑MM‑JJ HH:MM:SS) pour éviter toute confusion locale.
  • Encodage : UTF‑8 sans BOM garantit une lecture correcte des caractères accentués.

4. Automatiser l’exportation (facultatif)

Pour les sites qui doivent produire un rapport quotidien:

  • WP Toutes les exportationspermet de programmer l’envoi par email ou FTP.
  • MySQLCron: créez une tâche qui exécute la requête SQL et envoie le fichier vers un répertoire sûr.
0 2 * * * /usr/bin/mysql -u user -p'password' dbname -e "YOUR_SQL_QUERY" > /backups/subscriptions_$(date +%F).csv

Cas d’utilisation fréquents

A. Migration vers un nouveau magasin

Lorsque vous changez de logement ou déménagez Abonnements WooCommerce 3.x il est crucial d’exporter les signatures puis de les réimporter via l’outil d’import WooCommerce (CSV). Un export complet incluant les identifiants de paiement vous permet de maintenir les dates de facturation à venir sans pertes.

B. Analyse du turnover (taux d’attrition)

Exporter les champs _schedule_next_payment, _cancelled_date et _statusvous pouvez créer un tableau de suivi mensuel du nombre d’abonnements actifs par rapport aux abonnements fermés. Ajout du champ _order_total fournit des informations sur les revenus récurrents mensuels (MRR).

C. Intégration CRM (HubSpot, Zoho)

Besoins CRM Numéro client depuise-mail un toi statut d’abonnement . En exportant ces champs, vous importez directement les contacts dans le CRM et pouvez mettre en place des automatismes (email de rappel avant date de paiement).


Bonnes pratiques et pièges à éviter

Meilleures pratiques Risques courants
Utiliser des filtres temporels pour ne pas surcharger le serveur. Exporter la table entière alors qu’elle comporte des dizaines de milliers d’enregistrements : risque de timeout.
Vérifier les données sensibles (numéros de carte); ils ne sont jamais stockés clairement. Tentative d’extraction de cartes de crédit: violation de la norme PCI‑DSS et risque juridique.
Gardez le même encodage (UTF‑8) pour éviter les caractères corrompus. Ouvrir CSV avec encodage ANSI → perte d’accents, incohérences.
Documenter la structure CSV (nom de la colonne, format). Importer le fichier vers un autre système sans connaître le mappage → incompatibilités.
Planifier des sauvegardes après chaque exportation majeure. Perte de l’historique des abonnements en raison d’une suppression accidentelle.

Résumé des principales étapes

  1. Définissez vos besoins : quelles colonnes, quel format, quelle fréquence.
  2. Choisissez la méthode: export natif, plugin dédié ou requête SQL.
  3. Préparer l’environnement(sauvegarde, droits, maintenance).
  4. Faites un testdans un petit sous-ensemble.
  5. Démarrer l’exportation complèteet vérifiez l’intégrité du fichier.
  6. Automatisez si nécessaire(planification, envoi par email/FTP).
  7. Utiliser CSVpour le reporting CRM, la migration ou l’intégration.

Conclusion

L’exportation de signatures WooCommerce ne devrait plus être une tâche technique ardue. En suivant les étapes décrites ci-dessus, vous disposerez d’un dossier complet, propre et prêt à l’emploi, que ce soit pour analyser vos revenus récurrents, migrer votre boutique ou synchroniser vos données avec d’autres outils.

N’oubliez jamais de sauvegarder votre base de données avant toute manipulation, de tester sur un petit volume et de conserver une documentation claire du format d’export. Ainsi, chaque export deviendra une opération fiable, reproductible et parfaitement adaptée à vos objectifs business. Bonne extraction !