LRob - Hiboutik : synchronisation de la caisse Hiboutik avec WooCommerce (produits, stocks, ventes), sans code distant
  • PHP 93.4%
  • Shell 4.7%
  • CSS 1.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Robin 7f160fb12d Security batch B: M3, M4, F1-F7 from the review of a91f685
- M3: updater accepts only zips under our repository's release
  downloads; Ed25519 verification in upgrader_pre_download and signing
  in publish.sh, both dormant until Robin creates the key pair.
- M4: webhooks form-urlencoded only, 64 KB body and 200 products cap
  (beyond: full stock check), stock events re-read only products
  linked to this site, 'Change the secret' button.
- F1: credentials, Hiboutik webhooks and migration need manage_options.
- F2: CSV formula-injection guard on both exports.
- F3: unreadable API key pauses every job (no attempts lost, one order
  note, one email, admin notice) instead of failing silently.
- F4: per-order lock and markers around sale and line creation: an
  interrupted send is flagged for checking, never duplicated.
- F5: queue attempts counted before the work; orphaned import or
  stock check closed by the hourly maintenance.
- F6: webhooks installed only over HTTPS. F7: webhook cache keeps only
  this site's entries.
- Docs: 'Security rules' in SPEC, PROGRESS updated. FR updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PXWEBqiGdm6tDWzfpazUN6
2026-11-10 19:01:13 +00:00
admin/css Import preview, first-visit dashboard, neutral states, visible migration 2026-11-10 18:39:33 +00:00
docs Security batch B: M3, M4, F1-F7 from the review of a91f685 2026-11-10 19:01:13 +00:00
includes Security batch B: M3, M4, F1-F7 from the review of a91f685 2026-11-10 19:01:13 +00:00
languages Security batch B: M3, M4, F1-F7 from the review of a91f685 2026-11-10 19:01:13 +00:00
tests Security batch B: M3, M4, F1-F7 from the review of a91f685 2026-11-10 19:01:13 +00:00
.gitignore Squelette, réglages, test de connexion, garde-fou de quota 2026-11-10 17:30:53 +00:00
CHANGELOG.md Rewrite README, CHANGELOG and docs in English 2026-11-10 18:30:55 +00:00
CLAUDE.md Rename docs to English file names (PROGRESS.md, THIRD-PARTY-EXTENSION.md) 2026-11-10 18:32:37 +00:00
lrob-hiboutik.php Security batch B: M3, M4, F1-F7 from the review of a91f685 2026-11-10 19:01:13 +00:00
publish.sh Security batch B: M3, M4, F1-F7 from the review of a91f685 2026-11-10 19:01:13 +00:00
README.md Rename docs to English file names (PROGRESS.md, THIRD-PARTY-EXTENSION.md) 2026-11-10 18:32:37 +00:00
release.sh Rewrite README, CHANGELOG and docs in English 2026-11-10 18:30:55 +00:00
uninstall.php Import du catalogue Hiboutik → WooCommerce 2026-11-10 17:43:38 +00:00

LRob - Hiboutik

WordPress / WooCommerce extension that connects a Hiboutik point of sale to a WooCommerce shop: catalogue, stock and sales, both ways.

  • No remote code, no third-party server: the extension talks only to Hiboutik (and to the LRob repository for its updates, without sending any site data).
  • Few API calls: Hiboutik's base quota is 10,000 calls per month. Paginated import (250 products per call), then only targeted re-reads triggered by Hiboutik's notifications (one call per product, events merged), weekly full check in a few calls. Counters per month, day and hour, warning tiers and a degraded mode.
  • Stock: the till is the reference; every sale, return, delivery or transfer in store updates the web stock of the product concerned.
  • Web sales → till: every paid order becomes a Hiboutik sale (once only, retried automatically on error).
  • Migration from the "Spired-Hiboutik" extension: settings taken over, catalogue linked without changing anything on screen, notifications switched.

Interface in English, French translation included.

Requirements

PHP 8.1+, WordPress 6.4+, WooCommerce 8+ (Action Scheduler ships with WooCommerce), a Hiboutik API user (Settings › API).

Installation

Upload the zip of the latest release, activate, then WooCommerce › Hiboutik: enter the account, email and API key, test the connection, install the notifications, import the catalogue. Later updates arrive through the WordPress Plugins screen.

Development

  • No build step, no dependency. Tests without WordPress: php tests/run.php.
  • ./release.sh: translation template, French compilation, zip in ../releases/.
  • ./publish.sh: publishes a release on Forgejo (installed sites update from that release).
  • Documentation: docs/SPEC.md (what the extension does), docs/HIBOUTIK-API.md (API used), docs/THIRD-PARTY-EXTENSION.md (behaviour of the replaced extension), docs/MIGRATION.md, docs/PROGRESS.md (project progress).
  • English first: code, comments, docs and commit messages in English; French lives in languages/ as a translation.

Licence GPL-2.0+. © LRob.