Cloudflare, WAF et pare-feu : autoriser Order Invoicer
Comment mettre Order Invoicer en liste blanche dans Cloudflare, Sucuri, Wordfence ou un WAF, grâce à son user-agent dédié
Order Invoicer appelle l'API de votre boutique (Shopify, WooCommerce, Prestashop, Magento, Sylius, Odoo…) et celle de votre outil de facturation depuis nos serveurs. Si un service de protection se trouve devant votre site — Cloudflare, Sucuri, Wordfence, un WAF de votre hébergeur — ces appels peuvent être pris pour du trafic automatisé indésirable et bloqués.
Le symptôme typique : la synchronisation s'arrête, le connecteur est mis en pause, et les journaux affichent des HTTP 403, des pages « Just a moment… », un challenge JavaScript ou un captcha.
Notre user-agent
Toutes les requêtes sortantes d'Order Invoicer envoient le même en-tête User-Agent :
OrderInvoicer (+https://orderinvoicer.com)C'est le critère à utiliser pour nous identifier et nous autoriser. Il est identique pour tous les connecteurs et toutes les intégrations, et ne change pas d'un client à l'autre.
Nous n'avons pas d'adresse IP sortante fixe : nos serveurs et ceux de nos hébergeurs peuvent changer d'IP sans préavis. N'autorisez pas par adresse IP — utilisez le user-agent, éventuellement combiné au chemin de l'API.
Cloudflare
Créer une règle de contournement WAF
-
Ouvrez le tableau de bord Cloudflare et sélectionnez votre domaine.
-
Allez dans Security → WAF → Custom rules (ou Sécurité → WAF → Règles personnalisées).
-
Cliquez sur Create rule et nommez-la par exemple
Allow Order Invoicer. -
Utilisez l'éditeur d'expression avec :
(http.user_agent contains "OrderInvoicer")Pour être plus restrictif, ajoutez le chemin de l'API de votre boutique, par exemple pour WooCommerce :
(http.user_agent contains "OrderInvoicer" and starts_with(http.request.uri.path, "/wp-json/wc/")) -
Choisissez l'action Skip, puis cochez au minimum All remaining custom rules, Managed rules, Rate limiting rules, Super Bot Fight Mode et Browser Integrity Check.
-
Déployez la règle, puis placez-la en haut de la liste des règles personnalisées.
Bot Fight Mode
Bot Fight Mode et Super Bot Fight Mode (Security → Bots) challengent le trafic automatisé y compris légitime. Si vous les utilisez :
- créez la règle Skip ci-dessus, qui a priorité, ou
- passez les « definitely automated » en Allow pour les chemins d'API,
- désactivez Bot Fight Mode (offre gratuite) si vous ne pouvez pas créer d'exception : cette version ne permet pas d'exclusion fine.
Autres réglages Cloudflare à vérifier
- Under Attack Mode : il challenge toutes les requêtes, y compris les nôtres. Désactivez-le ou ajoutez la règle Skip.
- Rate limiting : nos synchronisations font des appels en rafale lors d'un import initial. Excluez notre user-agent des règles de limitation.
- Page Rules / Configuration Rules avec « Security Level: High » sur les chemins d'API.
- Cloudflare Access (Zero Trust) : s'il protège votre domaine ou votre back-office, l'API n'est pas accessible sans jeton. Ajoutez une politique Bypass sur le chemin de l'API.
Sucuri
Dans le pare-feu Sucuri, ouvrez Firewall → Settings → Whitelist (liste blanche) et ajoutez une exception pour le chemin de l'API. Si votre offre le permet, créez la règle sur le user-agent OrderInvoicer plutôt que sur une IP.
Plugins de sécurité WordPress
Wordfence, Solid Security (ex-iThemes), All-In-One WP Security, NinjaFirewall :
- ajoutez une exception (« allowlist » / « whitelist ») pour le user-agent
OrderInvoicer; - autorisez le chemin
/wp-json/wc/v3/(WooCommerce) ; - vérifiez que le blocage des « faux robots » ou du trafic sans navigateur ne nous intercepte pas ;
- désactivez, pour ce user-agent, les règles de limitation de débit.
ModSecurity et WAF d'hébergeur
Sur un WAF applicatif (ModSecurity, OVH, o2switch, Kinsta, WP Engine…), demandez à votre hébergeur d'ajouter une exception pour les requêtes portant le user-agent OrderInvoicer vers le chemin de l'API de votre boutique. Les règles OWASP génériques bloquent fréquemment les requêtes POST en JSON vers les API REST.
Vérifier que le blocage a disparu
Depuis n'importe quel terminal, rejouez une requête avec notre user-agent :
curl -I -A "OrderInvoicer (+https://orderinvoicer.com)" https://votre-boutique.com/wp-json/wc/v3/Un code 200 ou 401 signifie que vous passez le pare-feu (le 401 indique seulement qu'il manque les identifiants API). Un 403, un 503 ou une page de challenge signifie que le blocage est encore actif.
Ensuite, dans Order Invoicer, ouvrez votre connecteur et cliquez sur Tester la connexion & réactiver.
Aller plus loin
Toujours bloqué ? Écrivez-nous à contact@orderinvoicer.com avec la date et l'heure d'un blocage : nous vous indiquerons la requête exacte à retrouver dans vos journaux.