VibeFox Bob Go for PrestaShop — Aide
Prérequis
PrestaShop : 8.0 à 9.x.
PHP : 8.0 ou ultérieur. Le module refuse de s'installer sur les versions de PHP plus anciennes.
Compte Bob Go (uniquement pour les tarifs en temps réel) : Bob Go n'utilise pas de clés d'API. Il vous faut un compte Bob Go (bobgo.co.za), votre boutique installée comme canal de vente WooCommerce dans votre compte Bob Go (Sales channels) et « Rates at checkout » activé pour ce canal. Les services, les prix et les règles se configurent sur Bob Go. Si vous n'utilisez que des prix fixes, vous n'avez pas besoin de compte Bob Go.
Clé de licence VibeFox : achetée sur vibefox.net. Une clé fonctionne sur un seul domaine.
Installation
1. Dans le back-office, allez dans Modules > Module Manager et cliquez sur Upload a module. Choisissez le fichier ZIP du module.
2. Une fois le téléversement terminé, cliquez sur Configure, ou retrouvez plus tard VibeFox Bob Go dans la liste des modules et cliquez sur Configure.
3. Saisissez votre clé de licence VibeFox dans License key, dans le bloc de licence en haut de la page Configure, puis cliquez sur Activate (voir Clé de licence).
4. Dans votre compte Bob Go, installez votre boutique comme canal de vente. Activez « Rates at checkout » pour ce canal, puis configurez vos services et vos prix.
5. Sur la page Configure, vérifiez le domaine de la boutique, l'adresse d'origine (expédition depuis) et, si la devise de votre boutique n'est pas le ZAR, le taux de conversion vers le ZAR (voir Configuration). Si les adresses sud-africaines de votre boutique n'ont pas de province, cliquez sur Add South African provinces. Cliquez sur Save.
À l'installation, le module crée le transporteur Bob Go avec le texte de délai de livraison Courier delivery (South Africa). Le transporteur est actif, rattaché à toutes les zones et à tous les groupes de clients, et utilise par défaut les tarifs Bob Go en temps réel. Vous pouvez modifier les zones, les groupes de clients, le délai de livraison, le logo et les limites de taille dans Shipping > Carriers. N'y définissez pas de prix : le prix provient toujours du module.
Configuration
Tous les réglages se trouvent sur la page du module : Modules > Module Manager > VibeFox Bob Go > Configure. Ils s'appliquent à toutes les zones du transporteur. Chaque section a son propre bouton Save, qui enregistre la page entière. Chaque enregistrement vide aussi le cache des tarifs Bob Go. Les nombres acceptent un point ou une virgule comme séparateur décimal. Si une valeur est incorrecte, la page affiche une erreur et rien n'est enregistré : une valeur qui n'est pas un nombre ("…" must be a number.), un montant ou un poids négatif ("…" must be a number of 0 or more.), un ZAR conversion rate égal ou inférieur à 0, un Minimum weight supérieur au Maximum weight, ou un Method title de plus de 64 caractères.
Au-dessus du formulaire, la page signale les cas où les tarifs en temps réel ne peuvent pas fonctionner : Live rates are not requested: your store currency is … — set the "ZAR conversion rate"., lorsque les adresses sud-africaines n'ont pas de province (voir Provinces sud-africaines plus bas), ou lorsque l'unité de poids ou de dimensions de la boutique n'est pas reconnue et est traitée comme kg ou cm. Réglez les unités dans International > Localization (Local units).
Général
Enable Bob Go: active ou désactive le transporteur. C'est le même interrupteur que le statut du transporteur dans Shipping > Carriers.
Method title: le nom du transporteur affiché au client. Les services Bob Go, par exemple « The Courier Guy - Economy », s'affichent dessous sur la page de paiement avec leurs noms Bob Go. Par défaut : Bob Go. Obligatoire, 64 caractères maximum.
Shipping cost: mode de calcul du prix.
La raison de l'absence de tarifs en temps réel est écrite dans le journal. Elle n'est jamais affichée au client.
Compte Bob Go
Cette section explique ce qu'il vous faut sur Bob Go et affiche la dernière réponse de Bob Go pour le domaine de votre boutique : connected, the WooCommerce channel is not installed on Bob Go (HTTP 404), "Rates at checkout" is not enabled for this channel (HTTP 401), ou request failed avec le code d'erreur, ou no connection.
Store domain: Bob Go identifie votre boutique par son domaine. Laissez ce champ vide pour utiliser le domaine de votre boutique, affiché comme valeur indicative. Saisissez un autre domaine uniquement si votre canal sur Bob Go est installé sous une autre adresse, par exemple example.co.za/shop pour une boutique située dans un sous-dossier. Le protocole et la barre oblique finale sont supprimés.
ZAR conversion rate: Bob Go cote en rand sud-africain (ZAR). Si la devise par défaut de votre boutique n'est pas le ZAR, indiquez la valeur de 1 ZAR dans votre devise, par exemple 0.05. Les tarifs sont convertis avec ce taux, et les prix des produits sont envoyés à Bob Go en ZAR. Laissez ce champ vide pour ne pas utiliser les tarifs Bob Go en temps réel dans votre devise (les prix fixes fonctionnent toujours). Le taux doit être supérieur à 0. Si la devise de votre boutique est le ZAR, laissez ce champ vide.
Delivery dates: affiche la fourchette de dates de livraison estimée par Bob Go à côté de chaque service sur la page de paiement. L'estimation est toujours enregistrée avec la commande et visible sur la page de commande.
Envoi depuis (adresse d'origine)
L'adresse d'origine est envoyée à Bob Go avec chaque demande de tarifs. Si l'adresse de la boutique dans Shop Parameters > Contact > Stores est dans le même pays, les champs vides sont repris de celle-ci.
Origin country: le pays depuis lequel vous expédiez. Par défaut : Afrique du Sud. Bob Go n'expédie qu'en Afrique du Sud.
Origin province: une province sud-africaine, ou Store province (if in South Africa).
Origin city / suburb: la ville ou le quartier depuis lequel vous expédiez, par exemple Johannesburg.
Origin postal code: le code postal depuis lequel vous expédiez, par exemple 2001.
Origin street address: l'adresse de la rue depuis laquelle vous expédiez.
Provinces sud-africaines : PrestaShop ne gère pas de provinces pour l'Afrique du Sud : les adresses des clients dans ce pays n'ont donc pas de province, alors que Bob Go en attend une. Cliquez sur Add South African provinces pour ajouter les 9 provinces (codes EC, FS, GP, KZN, LP, MP, NC, NW, WC) comme états de l'Afrique du Sud et afficher le champ d'état dans les adresses sud-africaines. Les provinces déjà présentes, par code ou par nom, ne sont pas ajoutées de nouveau. Rien ne change tant que vous ne cliquez pas sur le bouton. Une fois les provinces en place, le champ affiche South African addresses have a province avec leur nombre.
Prix fixes (utilisés lorsque Shipping cost est sur Fixed prices (below), et en solution de repli lorsque Bob Go ne renvoie aucun tarif)
Price per country: une ligne par pays : un code pays à 2 lettres, un signe égal et le prix dans la devise par défaut de votre boutique, hors taxes, par exemple ZA=99.99. Utilisez * pour tous les autres pays, par exemple *=199.99 sur la ligne suivante. Les lignes dans un autre format sont supprimées à l'enregistrement, et la page les répertorie dans un avertissement.
Flat price: le prix des pays sans ligne ci-dessus. Laissez ce champ vide pour masquer le transporteur pour ces pays.
Fixed price applies: Per order facture le prix une seule fois. Per item (price × quantity) le multiplie par le nombre d'articles du panier. Les tarifs Bob Go en temps réel concernent toujours l'envoi complet.
Conditions
Minimum weight: masque le transporteur en dessous de ce poids de panier, en kg. 0 signifie pas de limite (par défaut).
Maximum weight: masque le transporteur au-dessus de ce poids de panier, en kg. 0 signifie pas de limite (par défaut). Si les deux limites sont définies, le minimum ne peut pas être supérieur au maximum.
Minimum order amount: n'affiche le transporteur que lorsque le sous-total du panier (produits soumis à la livraison, après remises, avant taxes) atteint au moins ce montant. Laissez vide pour toujours l'afficher.
Free shipping: active la livraison gratuite lorsque le montant de commande ci-dessous est atteint.
Free shipping from: le sous-total du panier (après remises, avant taxes) à partir duquel la livraison est gratuite. Utilisé uniquement lorsque Free shipping est activé. Bob Go n'est alors pas interrogé.
Tax: la règle de taxe du transporteur, ou No tax (par défaut). Les tarifs Bob Go incluent généralement déjà la TVA. Dans ce cas, gardez No tax pour ne pas facturer la taxe deux fois.
Disponibilité sans zones de livraison
Ignore shipping zones: lorsqu'il est activé, le transporteur est rattaché à toutes les zones, y compris celles créées plus tard, et proposé pour les pays ci-dessous. Lorsqu'il est désactivé, il n'est proposé que dans les zones du transporteur dans Shipping > Carriers ; les zones qu'il avait auparavant lui sont rendues.
Countries: les pays de destination pour ce mode. Laissez vide pour autoriser tous les pays vers lesquels vous expédiez. Utilisé uniquement lorsque Ignore shipping zones est activé.
Avancé
Debug log: enregistre les calculs de tarifs et les requêtes vers Bob Go dans logs/vfd_bobg_debug.log.php, dans le dossier du module. Ce fichier ne peut pas être ouvert depuis le web. Les adresses des clients ne sont pas enregistrées. Les erreurs de Bob Go sont enregistrées même lorsque cette option est désactivée. Désactivez le journal lorsque vous avez terminé.
Log: affiche la taille et les dernières entrées du journal. Cliquez sur Clear log pour le vider.
Remove data on uninstall: lorsqu'il est activé, la désinstallation du module supprime les réglages Bob Go, le transporteur, les tarifs en cache et les journaux. Le service Bob Go enregistré avec les commandes est conservé. Lorsqu'il est désactivé, tout est conservé pour une réinstallation.
Fonctionnement sur la page de paiement
À l'étape de livraison, PrestaShop demande au module le prix Bob Go. Seuls les produits physiques comptent : les produits virtuels n'ajoutent aucun poids et ne sont pas inclus dans le montant de commande. Le module vérifie d'abord le pays de destination (avec Ignore shipping zones), le poids du panier et le Minimum order amount. Si la livraison gratuite s'applique, le transporteur s'affiche comme gratuit et aucune requête n'est envoyée à Bob Go.
Dans les modes en temps réel, le module envoie à Bob Go le domaine de votre boutique, l'adresse d'origine et l'adresse de livraison (avec la province) ainsi que les articles du panier, avec les prix des produits en ZAR. Les tarifs en temps réel ne sont demandés qu'une fois que le client a saisi une ville ou un code postal. Les tarifs en ZAR sont convertis avec le ZAR conversion rate lorsque la devise de votre boutique n'est pas le ZAR. Le prix est calculé dans votre devise par défaut, puis affiché dans la devise du panier du client.
Sous le transporteur Bob Go, le client voit Choose a delivery service: et une option par service Bob Go, avec son nom, son prix et, si Delivery dates est activé, les dates de livraison estimées. Le premier service est sélectionné par défaut. Lorsque le client choisit un autre service, le choix est enregistré immédiatement, et le prix du transporteur ainsi que le total du panier sont mis à jour. Le transporteur coûte ce que coûte le service choisi. Si un service n'est plus proposé pour l'adresse, le client voit This service is not available for your address any more. Please choose another one. Si l'enregistrement échoue, le message est The service could not be saved. Please try again. La liste des services fonctionne avec les thèmes Classic et Hummingbird.
Les tarifs sont mis en cache pendant 1 heure par requête complète, de sorte que le même panier ne déclenche pas une nouvelle requête. Une requête échouée est mise en cache pendant 5 minutes, et le délai d'attente est de 12 secondes, afin qu'une panne de Bob Go ne ralentisse pas chaque mise à jour de la page de paiement. Une requête échouée ne bloque jamais le paiement : le transporteur est masqué, ou le prix fixe est utilisé dans le mode de repli. La raison est enregistrée dans le journal.
Si vous modifiez le transporteur dans Shipping > Carriers après qu'il a reçu des commandes, PrestaShop l'enregistre comme une nouvelle version du transporteur. Le module suit automatiquement la nouvelle version.
Le module affiche uniquement des tarifs. Il ne crée ni envois, ni lettres de voiture, ni étiquettes, ne suit pas les colis, ne synchronise pas les commandes avec Bob Go et n'envoie pas de notifications. Utilisez le tableau de bord Bob Go pour l'expédition. Il n'y a pas de sélection de point relais ni de consigne. Bob Go n'expédie qu'en Afrique du Sud.
Commandes
Lorsque la commande est passée, le service Bob Go choisi, son code et l'estimation de livraison sont enregistrés avec la commande. Les modifications ultérieures du panier ou des prix Bob Go ne les changent pas.
Dans le back-office, la page de commande affiche un bloc Bob Go avec Bob Go service (nom et code) et Estimated delivery. Le client voit Bob Go service et Estimated delivery sur la page de détail de commande de son compte. Les commandes à prix fixe ou en livraison gratuite n'ont pas de service Bob Go.
Clé de licence
Le module fonctionne avec une clé de licence VibeFox obtenue sur vibefox.net. Le bloc de licence License — VibeFox Bob Go est le premier bloc de Modules > Module Manager > VibeFox Bob Go > Configure, au-dessus des réglages. Saisissez la clé dans License key et cliquez sur Activate. Ensuite, le bloc affiche la clé masquée, le statut (par exemple la date jusqu'à laquelle la licence est active et votre domaine) et les boutons Check now pour vérifier à nouveau le statut, Change key pour saisir une autre clé et Remove key pour retirer la clé de cette boutique. En dessous figurent la ligne Product: presta-shipping-bob-go et le lien Manage licenses and domains in your account, qui ouvre votre compte vibefox.net. Seuls les employés disposant de l'autorisation Configure pour le module peuvent modifier la clé. Les textes du bloc suivent la langue du back-office (l'anglais et le russe sont inclus).
Si la clé n'est pas acceptée, le bloc indique la raison, par exemple Key not found, This key belongs to another product, Domain limit reached ou License expired on suivi d'une date. Après un changement d'adresse de la boutique, ou après avoir libéré une place de domaine dans votre compte, cliquez sur Check now. Si le serveur de licences est injoignable, le module continue de fonctionner avec le dernier statut connu.
Une clé fonctionne sur un seul domaine : celui de la boutique principale, y compris dans une configuration multiboutique. Retirer la clé de la boutique ne libère pas sa place de domaine. Libérez la place dans votre compte vibefox.net.
Sans clé active, le transporteur Bob Go n'est pas affiché aux clients sur la page de paiement et aucun tarif n'est calculé. La partie publique de PrestaShop ne sait pas que vous êtes connecté au back-office, donc le transporteur est aussi masqué pour vous : vous pouvez configurer le module avant d'acheter une clé, mais pas le tester au paiement. Un rappel apparaît dans Modules > Module Manager, dans l'onglet Alerts. Les commandes existantes ne sont pas affectées.
Lorsqu'une licence expire, le module continue de fonctionner, mais les mises à jour et l'assistance nécessitent un renouvellement. Le statut est vérifié à nouveau automatiquement pendant votre travail dans le back-office : une fois par jour pendant les 14 premiers jours après la saisie de la clé, puis une fois par semaine. Aucune tâche cron n'est nécessaire. La désinstallation ou la réinitialisation du module supprime toujours la clé de licence et le statut de la licence.
Dépannage
Bob Go n'apparaît pas sur la page de paiement : vérifiez que la licence est active et que Enable Bob Go est activé. Dans Shipping > Carriers, vérifiez que le transporteur couvre la zone du pays du client et son groupe, ou activez Ignore shipping zones et vérifiez Countries. Contrôlez les limites de poids et le Minimum order amount. En mode prix fixes, vérifiez que le pays, * ou le Flat price a un prix. Les produits peuvent aussi être limités à certains transporteurs sur la page produit.
Aucun tarif Bob Go ne s'affiche : ouvrez la page du module. La section Compte Bob Go affiche la dernière réponse de Bob Go. « The WooCommerce channel is not installed on Bob Go » (HTTP 404) signifie que le domaine de la boutique n'est pas un canal de vente sur Bob Go : vérifiez Store domain. « Rates at checkout is not enabled » (HTTP 401) signifie que la fonction est désactivée pour ce canal. Vérifiez aussi que le client a saisi une ville ou un code postal et, pour les boutiques qui ne sont pas en ZAR, que ZAR conversion rate est défini. Activez Debug log, rechargez la page de paiement et consultez le champ Log. Avec Bob Go live rates, fixed prices if Bob Go returns no rates, les clients reçoivent toujours le prix fixe pendant que vous corrigez le problème.
Ma boutique n'est pas en rand : Bob Go cote en ZAR. Indiquez la valeur de 1 ZAR dans la devise de votre boutique. Sans cette valeur, le module ne demande pas de tarifs à Bob Go. Les prix fixes fonctionnent toujours.
La page signale que les adresses sud-africaines n'ont pas de province : cliquez sur Add South African provinces dans la section Envoi depuis (adresse d'origine). Les adresses existantes des clients ne reçoivent une province que lorsqu'elles sont modifiées.
La taxe est facturée deux fois sur la livraison : les tarifs Bob Go incluent normalement la TVA. Réglez Tax sur No tax.
Les tarifs semblent obsolètes après une modification : cliquez sur Save sur la page du module. Cela vide le cache des tarifs Bob Go. Les modifications dans votre compte Bob Go sont prises en compte à l'expiration du cache d'une heure ou lors de l'enregistrement des réglages.
La page indique que le transporteur Bob Go est introuvable : le transporteur a été supprimé dans Shipping > Carriers. Réinitialisez le module dans Modules > Module Manager pour le recréer.
Désinstallation
Allez dans Modules > Module Manager, ouvrez le menu à côté de VibeFox Bob Go et choisissez Uninstall. La clé de licence, le statut de la licence et le cache des tarifs sont toujours supprimés. Si Remove data on uninstall est activé, le transporteur est supprimé (les commandes conservent leur historique), et les réglages, le journal et les choix de service des paniers ouverts sont supprimés. S'il est désactivé, le transporteur est seulement désactivé et tous les réglages sont conservés. Réinstaller le module, ou Reset, rend au transporteur enregistré le statut qu'il avait auparavant : un transporteur actif est de nouveau activé, un transporteur désactivé le reste. Le service Bob Go enregistré avec les commandes est toujours conservé.
Bob Go est une marque de son propriétaire respectif. Ce module n'est ni affilié à Bob Go, ni approuvé par lui.
