LRob - Hiboutik : synchronisation de la caisse Hiboutik avec WooCommerce (produits, stocks, ventes), sans code distant
- PHP 93.4%
- Shell 4.7%
- CSS 1.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
- 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 |
||
| admin/css | ||
| docs | ||
| includes | ||
| languages | ||
| tests | ||
| .gitignore | ||
| CHANGELOG.md | ||
| CLAUDE.md | ||
| lrob-hiboutik.php | ||
| publish.sh | ||
| README.md | ||
| release.sh | ||
| uninstall.php | ||
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.