VibeFox Purolator for WooCommerce — Aide
Prérequis
WordPress : 5.8 ou ultérieur.
WooCommerce : 5.0 ou ultérieur, installé et activé. L'extension refuse de s'activer sans lui.
PHP : 8.0 ou ultérieur. L'extension SOAP de PHP n'est pas requise.
Purolator E-Ship Web Services (pour les tarifs en temps réel uniquement) : inscrivez-vous à E-Ship Web Services dans le Purolator E-Ship Resource Centre sur le site de Purolator. Purolator fournit des clés et des mots de passe distincts pour les environnements de développement et de production. Vous avez aussi besoin de votre numéro de compte de facturation Purolator et du code postal canadien d'expédition. Si vous n'utilisez que des prix fixes, vous n'avez pas besoin de clés d'API.
Clé de licence VibeFox : achetée sur vibefox.net. Une clé fonctionne sur un seul domaine.
Installation
1. Dans WordPress, allez dans Plugins > Add New > Upload Plugin, choisissez le fichier ZIP de l'extension et cliquez sur Install Now. Vous pouvez aussi envoyer le dossier vfd_purolator dans /wp-content/plugins/ par FTP.
2. Cliquez sur Activate.
3. Ouvrez les réglages : WooCommerce > Settings > Shipping > VibeFox Purolator, ou cliquez sur Settings sous le nom de l'extension sur la page Plugins.
4. Saisissez votre clé de licence VibeFox dans le bloc de licence en haut de la page et cliquez sur Activate.
5. Pour les tarifs en temps réel, remplissez la section Purolator API (live rates). Pour tester, activez Development environment avec la clé de développement. Remplissez Country prices ou Fallback price si vous voulez des prix fixes ou un prix de secours (voir Configuration).
6. Ajoutez VibeFox Purolator à une zone d'expédition dans WooCommerce > Settings > Shipping > Shipping zones, ou activez Ignore shipping zones et choisissez des pays.
Configuration
Tous les réglages se trouvent sur une seule page : WooCommerce > Settings > Shipping > VibeFox Purolator. Ils s'appliquent à toutes les zones d'expédition. Lorsque vous ajoutez la méthode à une zone, la fenêtre de la zone ne comporte qu'un seul champ :
Title (zone): le nom que voit le client pour cette zone. Laissez-le vide pour utiliser le Method title général.
Chaque fois que vous enregistrez les réglages, les tarifs Purolator en cache sont effacés. Si les tarifs en temps réel ne peuvent pas fonctionner avec les valeurs enregistrées (clé, mot de passe ou compte manquant, pas de code postal canadien d'expédition, pas de taux CAD), ou s'il n'y a ni identifiants d'API ni prix fixes, un avertissement apparaît au-dessus des réglages.
Général
Enable/Disable: active ou désactive la méthode dans toutes les zones en même temps.
Method title: le nom de la méthode de livraison affiché dans le panier et sur la page de paiement. Une zone peut le remplacer. Par défaut : Purolator.
Tax status: Taxable ajoute la taxe WooCommerce au coût de livraison, None ne l'ajoute pas. Voir aussi Canadian sales taxes ci-dessous.
API Purolator (tarifs en temps réel)
Lorsque la clé d'API, le mot de passe et le compte de facturation sont renseignés, le prix provient du service web Purolator E-Ship Estimating. Si Purolator ne fournit aucun tarif, le prix fixe est utilisé, ou la méthode est masquée s'il n'y en a pas.
API key: votre clé E-Ship Web Services pour l'environnement sélectionné.
API password: le mot de passe qui correspond à la clé.
Billing account number: votre numéro de compte Purolator. Les estimations utilisent les tarifs de ce compte. L'environnement de développement accepte le compte de test indiqué dans la documentation Purolator.
Development environment: utilise l'environnement de développement de Purolator (devwebservices.purolator.com) avec la clé de développement. Les prix sont des données de test. Désactivez-le sur une boutique en production.
Ship-from postal code: le code postal canadien à partir duquel les colis sont expédiés, par exemple L4W 5M8.
Service in Canada: Cheapest available (par défaut), Purolator Ground, Purolator Ground 9AM, Purolator Ground 10:30AM, Purolator Ground Evening, Purolator Express, Purolator Express 9AM, Purolator Express 10:30AM, Purolator Express 12PM ou Purolator Express Evening.
Service to the USA: Cheapest available (par défaut), Purolator Ground U.S., Purolator Express U.S., Purolator Express U.S. 9AM, Purolator Express U.S. 10:30AM ou Purolator Express U.S. 12:00.
International service: Cheapest available (par défaut), Purolator Express International, Purolator Express International 9AM, Purolator Express International 10:30AM ou Purolator Express International 12:00.
Si le service choisi n'est pas proposé pour l'adresse, le service disponible le moins cher est utilisé.
Canadian sales taxes: pour les adresses canadiennes, le total Purolator comprend GST/HST/PST/QST. Activez Use Purolator prices without GST/HST/PST/QST lorsque Tax status est Taxable, afin de ne pas facturer la taxe deux fois.
CAD → (store currency) rate: les prix Purolator sont en CAD. Si la devise de votre boutique n'est pas le CAD, indiquez combien d'unités de votre devise vaut un CAD, par exemple 0.68. Sans cette valeur, les tarifs en temps réel ne sont pas utilisés. Si la devise de votre boutique est le CAD, laissez le champ vide.
Default product weight (kg): utilisé pour chaque produit sans poids. Par défaut : 0.5. Les poids sont convertis depuis l'unité de la boutique et envoyés à Purolator comme poids total en livres entières, arrondi au supérieur.
Prix fixes (utilisés sans identifiants d'API, et en secours lorsque l'API ne fournit aucun tarif)
Country prices: un prix par pays et par poids du panier, dans la devise de la boutique. Cliquez sur + Add country pour ajouter une ligne et sur la croix pour en supprimer une. Choisissez * Default (all other countries) pour une ligne qui couvre tous les pays sans ligne propre. Chaque ligne comporte un prix Base et des colonnes de taille : XS jusqu'à 1 kg, S 1–2 kg, M 2–3 kg, L 3–5 kg et XL au-delà de 5 kg. Un prix de taille vide ou égal à zéro utilise Base. Un Base à 0, ou un Base vide, signifie livraison gratuite pour les poids sans prix de taille propre. Les lignes sans aucun prix et les codes pays invalides sont supprimés à l'enregistrement. Une seule ligne par pays est conservée.
Fallback price: le prix pour un pays qui n'a pas de ligne dans Country prices ni de ligne *. Laissez-le vide pour masquer la méthode pour ces pays.
Fixed price per: Order facture le prix une seule fois. Item (price × quantity) le multiplie par le nombre d'articles du panier. Cela ne s'applique qu'aux prix fixes. Les tarifs en temps réel sont toujours calculés pour l'envoi complet.
Conditions
Min cart weight (kg): masque la méthode lorsque le panier pèse moins. 0 signifie pas de limite.
Max cart weight (kg): masque la méthode lorsque le panier pèse plus. Par défaut : 30. 0 signifie pas de limite.
Minimum order amount: n'affiche la méthode que lorsque le sous-total du panier atteint ce montant. Laissez vide pour l'afficher toujours.
Excluded shipping classes: masque la méthode lorsque le panier contient un produit appartenant à l'une de ces classes d'expédition WooCommerce.
Free shipping from: le sous-total du panier à partir duquel la livraison est gratuite. Cela ne s'applique que lorsque la méthode a un prix : un prix par pays ou le prix de secours (aucune requête n'est alors envoyée à Purolator), ou un tarif en temps réel. Laissez vide pour ne jamais proposer la livraison gratuite.
Pour ces conditions, le poids du panier compte les produits sans poids comme 0. Les prix et les poids acceptent la virgule ou le point comme séparateur décimal.
Disponibilité sans zones d'expédition
Ignore shipping zones: propose Purolator pour les pays ci-dessous, même si la méthode n'est ajoutée à aucune zone d'expédition.
Countries: les pays de destination pour ce mode. Laissez vide pour utiliser tous les pays vers lesquels vous expédiez. Ce champ n'est utilisé que lorsque Ignore shipping zones est activé.
Avancé
Debug log: écrit les calculs de tarifs dans WooCommerce > Status > Logs (source « vfd-purolator »). Les erreurs de l'API sont toujours journalisées, même lorsque le journal de débogage est désactivé. Les clés d'API, le compte de facturation et les codes postaux des clients ne sont pas journalisés. Désactivez le journal une fois terminé.
Remove data on uninstall: lorsqu'il est activé, la suppression de l'extension efface ses réglages, ses méthodes de zone et les tarifs en cache. La désactivation de l'extension ne supprime jamais rien.
Fonctionnement sur la page de paiement
Lorsque le client saisit une adresse de livraison, WooCommerce demande un tarif à l'extension. L'extension vérifie d'abord les conditions : pays de livraison, poids du panier, montant minimal de commande et classes d'expédition exclues. Ensuite, elle cherche un prix : le tarif Purolator en temps réel, puis le tableau par pays, puis le prix de secours. S'il n'y a aucun prix, la méthode est masquée. Si la livraison gratuite s'applique, le client voit la méthode sans frais.
Avec des identifiants d'API, l'extension envoie à Purolator une requête Quick Estimate : votre compte de facturation, le code postal d'expédition, la ville, la province ou l'État du client, le pays et le code postal, ainsi que le poids total du panier en livres entières. Pour le Canada, un code postal valide est nécessaire ; pour les États-Unis, un code ZIP valide ; les autres pays sont envoyés avec le code postal tel qu'il a été saisi. Les dimensions (poids volumétrique) ne sont pas envoyées. Purolator renvoie les prix de tous les services ; l'extension retient le service que vous avez choisi ou le moins cher, retire les taxes de vente canadiennes si c'est configuré, et convertit le prix depuis le CAD. Le service est enregistré avec la commande sous le nom Purolator service et il est visible sur l'écran de commande de l'administration.
Chaque réponse est mise en cache pendant 1 heure. Une requête en échec est mise en cache pendant 10 minutes, afin qu'une panne de Purolator ne ralentisse pas chaque actualisation de la page de paiement. Le délai d'attente de l'API est de 10 secondes.
Si Purolator ne fournit aucun tarif (API hors service, identifiants ou code postal incorrects, service indisponible, pas de taux CAD), le client ne voit aucune erreur. Le prix fixe est utilisé, ou la méthode est masquée s'il n'y a pas de prix fixe. La raison est inscrite dans le journal.
La méthode fonctionne sur le paiement classique et sur les blocs Panier et Paiement. Elle est compatible avec le stockage de commandes haute performance (HPOS) de WooCommerce.
L'extension ne calcule que les tarifs. Elle ne crée pas d'envois Purolator, n'imprime pas d'étiquettes, ne réserve pas d'enlèvements, ne gère pas les retours et ne suit pas les colis. Elle n'utilise pas le Full Estimate (dimensions, plusieurs colis, options comme la signature ou les marchandises dangereuses), n'affiche pas de dates de livraison, n'affiche pas plusieurs services comme tarifs séparés et ne récupère pas automatiquement les taux de change.
Clé de licence
L'extension fonctionne avec une clé de licence VibeFox obtenue sur vibefox.net. Le bloc de licence se trouve en haut de WooCommerce > Settings > Shipping > VibeFox Purolator. Collez la clé dans License key et cliquez sur Activate. Le bloc affiche l'état, par exemple la date jusqu'à laquelle la licence est active, ainsi que votre domaine. Utilisez Check now pour vérifier à nouveau l'état, Change key pour saisir une autre clé et Remove key pour la retirer de ce site. Le lien Manage licenses and domains in your account ouvre votre compte vibefox.net.
Une clé fonctionne sur un seul domaine. Retirer la clé d'un site ne libère pas son emplacement de domaine. Libérez-le dans votre compte vibefox.net.
Sans clé active, Purolator n'est pas affiché aux clients sur la page de paiement. Les gestionnaires de la boutique connectés le voient toujours, marqué (unlicensed — visible to admins only), afin que vous puissiez configurer et tester l'extension avant d'acheter une clé. Un rappel apparaît sur la page Plugins et sur les pages WooCommerce. Les commandes existantes ne sont pas affectées.
Lorsqu'une licence expire, l'extension continue de fonctionner, mais les mises à jour et l'assistance nécessitent un renouvellement. L'état est vérifié à nouveau automatiquement en arrière-plan.
Dépannage
Purolator n'apparaît pas sur la page de paiement : vérifiez que la licence est active, que Enable/Disable est activé et que la méthode est ajoutée à la zone du pays du client (ou que Ignore shipping zones est activé et que le pays est autorisé). Contrôlez les limites de poids, Minimum order amount et Excluded shipping classes. Si Purolator ne fournit aucun tarif, la méthode n'est affichée qu'avec un prix par pays, une ligne * ou un Fallback price.
Les tarifs en temps réel n'apparaissent pas : ouvrez WooCommerce > Status > Logs, source « vfd-purolator ». Les erreurs de l'API y figurent toujours. Activez Debug log pour les détails. Avec des clés d'API, l'adresse doit comporter un code postal valide (Canada) ou un code ZIP valide (États-Unis).
HTTP 401 dans le journal : la clé ou le mot de passe d'API ne correspond pas à l'environnement sélectionné. Les clés de développement ne fonctionnent qu'avec Development environment activé, les clés de production seulement lorsqu'il est désactivé.
Le tarif diffère de celui du site Purolator : le Quick Estimate utilise les tarifs de votre compte de facturation et le poids total arrondi au supérieur en livres entières, sans poids volumétrique. Pour les adresses canadiennes, le total inclut les taxes de vente ; utilisez Canadian sales taxes si WooCommerce ajoute la taxe sur la livraison. Les prix sont convertis avec votre CAD → (store currency) rate.
Les tarifs semblent périmés après une modification : enregistrez la page des réglages. Cela efface les tarifs Purolator en cache.
Le bloc de licence affiche une erreur : suivez le message affiché dans le bloc. Par exemple, si la clé est déjà utilisée sur un autre domaine, libérez un emplacement dans votre compte vibefox.net et cliquez sur Check now. Si l'adresse du site a changé, cliquez sur Check now pour activer la clé pour le nouveau domaine. Si le serveur de licences est injoignable, l'extension continue de fonctionner avec le dernier état connu.
Désinstallation
La désactivation de l'extension conserve toutes les données. Pour la supprimer, désactivez-la puis supprimez-la sur la page Plugins. La clé de licence et l'état de licence de cette extension sont toujours supprimés. Les réglages, les méthodes de zone et les tarifs en cache ne sont supprimés que si Remove data on uninstall était activé. Sinon, ils restent pour une réinstallation ultérieure. Les commandes existantes conservent leurs lignes de livraison.
Purolator est une marque de commerce appartenant à son propriétaire respectif. Cette extension n'est pas affiliée à Purolator et n'est pas approuvée par lui.
