FixM is a lightweight utility plugin for Shop-Script that helps you clean up and normalize marking/labeling codes (Chestny Znak / GS1) stored in orders. It is designed for cases when codes are saved in an inconsistent form — for example, missing proper GS/FNC1 separators — which can lead to printing or processing errors.
Main idea: show you a safe preview first, then apply only the changes you want — manually or automatically.
Key features
- GS/FNC1 separator normalization (ASCII 29)
- Collapse duplicated GS separators
- Optionally ensure exactly one leading GS
- Optionally remove a trailing GS
- Optional structure enforcement for Chestny Znak / GS1 AIs
- Insert GS before selected AIs (
21, 91, 92, 93) according to your settings
- Helps restore consistent code formatting when separators are missing
- Preview-first workflow
- See Current value and New value side-by-side
- Edit the new value manually if needed
- Save only selected rows for maximum control
- Flexible filters
- Time window (e.g., last 24 hours)
- Order statuses
- Processing limit
- Automation & reporting
- CLI + cron support for scheduled maintenance
- Built-in cron command builder that generates the exact command based on your current settings
- CSV export of preview/report (useful for audits and support cases)
- Single code test tool (“before/after”) right on the settings page
Safe by design
- FixM does not change orders, products, prices, or customer data
- It only updates marking code values stored in
shop_order_item_codes
- No external services — everything runs locally on your server
Recommended workflow
- Open plugin settings and configure filters/options.
- Click Preview to see what will change.
- (Optional) Edit the New value and save only selected rows.
- Run Automatic fix to apply changes in bulk.
- (Optional) Copy the generated cron command and schedule it in your server crontab.
Compatibility
- Webasyst + Shop-Script
- Works with Webasyst UI 1.3 and 2.0
Tip: As with any bulk update, it is recommended to keep a database backup and start with a small preview limit before applying changes to large datasets.