VibeFox EasyPost for WooCommerce — Aide
Prérequis
WordPress : 5.8 ou ultérieur.
WooCommerce : 7.0 ou ultérieur, installé et activé. L'extension refuse de s'activer sans lui.
PHP : 8.0 ou ultérieur.
Compte EasyPost (pour les tarifs en temps réel uniquement) : créez un compte sur le site d'EasyPost, connectez vos comptes transporteurs (USPS, UPS, FedEx et d'autres) dans le tableau de bord EasyPost et copiez la clé d'API depuis EasyPost Dashboard > Account Settings > API Keys. EasyPost facture les étiquettes achetées, et non les demandes de tarifs. Si vous utilisez uniquement les tarifs de secours, vous n'avez pas besoin de compte EasyPost.
Produits : les produits doivent avoir un poids et, idéalement, des dimensions.
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_easypost dans /wp-content/plugins/ par FTP.
2. Cliquez sur Activate.
3. Ouvrez les réglages : WooCommerce > Settings > Shipping > VibeFox EasyPost, ou cliquez sur Settings sous le nom de l'extension sur la page des extensions.
4. Saisissez votre clé de licence VibeFox dans le bloc de licence en haut de la page et cliquez sur Activate.
5. Collez votre clé d'API EasyPost et renseignez l'adresse Ship from. Le code postal est obligatoire pour les tarifs en temps réel.
6. Si la devise de votre boutique n'est pas l'USD, saisissez le USD exchange rate. Vous pouvez aussi saisir des tarifs de secours (voir Configuration).
7. Ajoutez VibeFox EasyPost à une zone de livraison dans WooCommerce > Settings > Shipping > Shipping zones, ou activez Ignore shipping zones et choisissez les pays.
Configuration
Tous les réglages se trouvent sur une seule page : WooCommerce > Settings > Shipping > VibeFox EasyPost. Ils s'appliquent à toutes les zones de livraison. Lorsque vous ajoutez la méthode à une zone, la fenêtre de la zone ne comporte qu'un seul champ :
Title (zone): le nom de la méthode de livraison que voient les clients pour cette zone. Laissez vide pour utiliser le Name général.
En haut de la page, l'extension affiche des avertissements lorsque les tarifs en temps réel ne peuvent pas être utilisés : pas de clé d'API, pas de code postal ou de pays d'expédition, ou une devise de boutique autre que l'USD sans taux de change. Une note apparaît aussi lorsqu'une clé d'API de test est définie. Chaque fois que vous enregistrez les réglages, les tarifs EasyPost mis en cache sont effacés.
Général
Enable/Disable: active ou désactive la méthode dans toutes les zones à la fois. Par défaut : activé.
Name: le nom de la méthode de livraison affiché dans le panier et au paiement. Une zone peut le remplacer par son propre Title. Par défaut : EasyPost Shipping.
Compte EasyPost
API key: votre clé d'API EasyPost depuis EasyPost Dashboard > Account Settings > API Keys. Une clé de production (qui commence par EZAK) renvoie de vrais tarifs. Une clé de test (qui commence par EZTK) renvoie des tarifs de test EasyPost ; ne l'utilisez que pour tester.
Allowed carriers / services: facultatif, séparé par des virgules. Saisissez un transporteur (USPS) ou un transporteur et un service (USPS:Priority, UPS:Ground), tels qu'EasyPost les nomme. Le tarif autorisé le moins cher est affiché. Laissez vide pour afficher le tarif le moins cher de n'importe quel transporteur.
Expédition depuis
L'adresse depuis laquelle vos colis sont expédiés. Si le Country est le pays de votre boutique, les champs vides sont repris de l'adresse de la boutique dans WooCommerce > Settings > General (et le nom de l'expéditeur, du titre du site).
Sender name / company: le nom de l'expéditeur ou de la société.
Street address: la rue de l'adresse d'expédition.
City: la ville d'expédition.
State: le code d'état à deux lettres, par exemple CA ou NY.
ZIP code: le code postal d'expédition. Obligatoire pour les tarifs en temps réel.
Country: le pays depuis lequel vous expédiez. Par défaut : United States.
Tarifs
Parcels: la manière dont le panier est envoyé à EasyPost.
Les poids sont convertis de l'unité de poids de votre boutique en onces (minimum 1 oz) et les dimensions en pouces. Si un produit n'a pas de dimensions, le colis n'est tarifé qu'au poids.
USD exchange rate: les tarifs EasyPost sont en USD. Saisissez le prix de 1 USD dans la devise de votre boutique, par exemple 0.92. Sans cette valeur, les tarifs en temps réel ne sont pas utilisés, seulement les tarifs de secours. Inutile si la devise de la boutique est l'USD. Les boutiques en USD et en CAD demandent à EasyPost de coter dans leur propre devise. Le point et la virgule sont tous deux acceptés comme séparateur décimal.
Tax status: Taxable permet à WooCommerce d'ajouter la taxe sur la livraison selon vos règles fiscales, None ne l'ajoute pas. Les tarifs EasyPost n'incluent pas la taxe de vente. Par défaut : Taxable.
Tarifs de secours
Utilisés lorsqu'aucun tarif en temps réel n'est disponible : pas de clé d'API, EasyPost est injoignable, la clé est refusée ou aucun transporteur n'a de tarif pour l'adresse. Les prix sont exprimés dans la devise de votre boutique. Laissez les deux champs vides pour masquer la méthode dans ce cas.
Country prices: une ligne par pays : code pays à deux lettres, deux-points et le prix, par exemple US:9.99. Les lignes d'un autre format sont ignorées et listées dans un message d'erreur à l'enregistrement.
Other countries: le prix pour les pays qui ne figurent pas dans la liste ci-dessus. Laissez vide pour masquer la méthode pour ces pays.
Conditions
Free shipping from: le sous-total du panier à partir duquel la livraison est gratuite. Aucune requête n'est alors envoyée à EasyPost. Laissez vide pour désactiver cette option.
Minimum subtotal: n'affiche la méthode que si le sous-total du panier atteint au moins ce montant. Laissez vide pour toujours l'afficher.
Minimum weight: masque la méthode lorsque le panier pèse moins, dans l'unité de poids de votre boutique. 0 signifie aucune limite.
Maximum weight: masque la méthode lorsque le panier pèse plus, dans l'unité de poids de votre boutique. 0 signifie aucune limite.
Disabled shipping classes: masque la méthode lorsque le panier contient un produit d'une de ces classes d'expédition WooCommerce.
Disponibilité sans zones de livraison
Ignore shipping zones: propose la méthode pour les pays indiqués ci-dessous, qu'elle soit ajoutée ou non à une zone.
Countries: les pays de destination pour ce mode. Laissez vide pour utiliser tous les pays vers lesquels votre boutique livre. Ce champ n'est utilisé que lorsque Ignore shipping zones est activé.
Avancé
Debug log: écrit les requêtes EasyPost dans WooCommerce > Status > Logs, source vfd-easypost. Les erreurs d'API sont toujours journalisées, même lorsque cette option est désactivée. La clé d'API et les adresses des clients ne sont jamais journalisées.
Remove data on uninstall: lorsque l'option est activée, la suppression de l'extension efface ses réglages et ses méthodes de zone. La désactivation de l'extension ne supprime jamais les réglages.
Fonctionnement au 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, sous-total minimum et classes d'expédition désactivées. Si la livraison gratuite s'applique, la méthode s'affiche avec un prix nul et aucune requête n'est envoyée à EasyPost.
Sinon, l'extension envoie à EasyPost l'adresse d'expédition, l'adresse de livraison et le colis, et reçoit les tarifs de tous vos comptes transporteurs. Elle retient le tarif autorisé le moins cher, le convertit dans la devise de votre boutique et l'affiche sous le nom de votre méthode. Pour les pays qui exigent un code postal, la requête n'est envoyée qu'une fois que le client l'a saisi.
Chaque réponse est mise en cache pendant 1 heure pour la même adresse et le même colis. Une adresse sans tarif utilisable est mémorisée pendant 10 minutes. Après un délai d'attente, une clé refusée, une limitation de débit ou une erreur serveur d'EasyPost, aucune requête n'est envoyée pendant 5 minutes. Le délai d'attente de l'API est de 10 secondes. Dans tous ces cas, le client ne voit aucune erreur : le tarif de secours est utilisé, ou la méthode est masquée s'il n'existe pas de tarif de secours.
Le transporteur et le service choisis, ainsi que, en mode un colis, les délais de livraison estimés, sont enregistrés avec la ligne de livraison de la commande. Vous les voyez sur l'écran de commande de l'administration.
La méthode fonctionne sur le paiement classique et sur les blocs Panier et Paiement. Elle est compatible avec le stockage haute performance des commandes de WooCommerce (HPOS).
L'extension calcule uniquement les tarifs. Elle n'achète pas d'étiquettes, ne suit pas les colis, ne valide pas les adresses, ne propose pas de points de retrait ou de dépôt, et n'ajoute pas d'options d'assurance ou de signature. Elle affiche une seule option (le tarif autorisé le moins cher), et non une liste de services. Il n'y a pas d'optimisation de l'emballage au-delà de l'empilement des articles dans un seul colis, ni de majoration de tarif ou de frais de gestion.
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 EasyPost. Collez la clé dans License key et cliquez sur Activate. Le bloc affiche le statut, par exemple la date jusqu'à laquelle la licence est active, ainsi que votre domaine. Utilisez Check now pour vérifier à nouveau le statut, 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 l'emplacement dans votre compte vibefox.net.
Sans clé active, EasyPost n'est pas affiché aux clients au moment du paiement. Les gestionnaires de la boutique connectés le voient toujours, avec la mention (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 des extensions et sur les pages de 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. Le statut est vérifié à nouveau automatiquement en arrière-plan.
Dépannage
EasyPost n'apparaît pas au 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é). Vérifiez les limites de poids, Minimum subtotal et Disabled shipping classes. Sans tarif en temps réel, la méthode a besoin d'un tarif de secours pour le pays ou pour Other countries.
Les tarifs en temps réel n'apparaissent pas : lisez les avertissements en haut de la page des réglages, puis activez le Debug log, rechargez le paiement et ouvrez WooCommerce > Status > Logs, source vfd-easypost. Causes fréquentes : pas de clé d'API ni de code postal d'expédition, boutique non en USD sans USD exchange rate, client n'ayant pas encore saisi de code postal, aucun transporteur de votre compte EasyPost ne dessert l'adresse, ou les filtres Allowed carriers / services écartent tous les tarifs.
Les tarifs ressemblent à des prix de test : une clé de test (EZTK...) est définie. Utilisez une clé de production (EZAK...) sur la boutique en ligne.
Les tarifs se sont arrêtés pendant quelques minutes : après un délai d'attente, une clé refusée ou une erreur serveur d'EasyPost, l'extension suspend les requêtes pendant 5 minutes et utilise les tarifs de secours. Vérifiez la clé d'API et le journal.
La taxe est-elle incluse ? Les tarifs EasyPost n'incluent pas la taxe de vente. Avec Tax status sur Taxable, WooCommerce ajoute la taxe sur la livraison selon vos réglages fiscaux.
Les tarifs semblent obsolètes après une modification : enregistrez la page des réglages. Cela efface les tarifs EasyPost mis en cache.
Hooks pour développeurs : les filtres vfd_ep_shipment_request (corps de la requête), vfd_ep_selected_rate (tarif choisi), vfd_ep_api_url (URL de base de l'API) et woocommerce_shipping_vfd_easypost_is_available permettent d'adapter l'extension.
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 statut connu.
Désinstallation
La désactivation de l'extension conserve tous les réglages et supprime seulement les tarifs mis en cache. Pour la supprimer, désactivez-la puis supprimez-la sur la page Plugins. La clé de licence et le statut de licence de cette extension, les tarifs mis en cache et les anciens fichiers journaux sont toujours supprimés. Les réglages et les méthodes de zone ne sont supprimés que si Remove data on uninstall était activé. Sinon, ils sont conservés pour une réinstallation ultérieure. Les commandes existantes conservent leurs lignes de livraison.
EasyPost est une marque de son titulaire respectif. Cette extension n'est ni affiliée à EasyPost ni approuvée par EasyPost.
