- New
Reference: WP-VI-CON-V1
Brand: WebPoint
Reference: BOUT-93K2X
Brand: WebPoint
Reference: EXT-CRMAX-MULTILANG
Brand: WebPoint
Reference: EBP-2025-PRO
Brand: WebPoint
Turnkey module to automate your tools, garden and home dropshipping with Elemtechnic, French B2B wholesaler: CSV import of 1,310 products (drills, lawnmowers, hedge trimmers, pressure washers, heaters, lighting, pumps…) in one command.
✅ 1,310 references · 50 brands · 10 native categories + sub-cats on the fly
✅ Multi-image derivation via _F/_B/_U/_Z suffixes (Front/Back/Up/Zoom)
✅ 1 CSV row = 1 product (no variants to manage)
✅ Native UTF-8 encoding · 4 pricing modes · 24/7 CRON · Compatible PS 1.7 → 9.x
✅ PrestaShop 9 BO original image fix included
You configure. The module imports. You sell hardware. 🔧
demos.akimania.com/ps9-elemtechnic/PrestaShop dropshipping module ELEMTECHNIC
🌐 Source catalog available in:
🇫🇷 100% native French catalog. No automatic translation: texts written directly in FR by the supplier, ideal for 🇫🇷 FR / 🇧🇪 BE / 🇨🇭 CH / 🇨🇦 CA stores.
The module that automates from A to Z your French DIY dropshipping with Elemtechnic on PrestaShop
PrestaShop 1.7 → 9.x · 1,310 references · 50 brands · 10 native categories · CRON 24/7
Are you launching or running a DIY, gardening or tools online store? You work with Elemtechnic (French B2B wholesaler specializing in tools, power tools, garden, home) and you spend your days manually copying product sheets from their portal, classifying each item into the right sub-category (Screwdriver / Petrol mower / Pressure washer / Submersible pump / Heater…), uploading photos from their CDN, recalculating your selling prices with your margin?
With the Elemtechnic dropshipping tools garden home module, everything becomes automatic. You enter the Elemtechnic CSV URL, you click "Start import", and the module creates your 1,310 PrestaShop products before your eyes, in real time, with their 5 derived images per variant, in a perfectly organized native tree.
| Task | ❌ Without the module | ✅ With the module |
|---|---|---|
| Import 1,310 DIY references | 20h+ manual, copying from Elemtechnic portal | 1 click, ~1h in background |
| Multi-angle product (front, back, top, zoom) | Only one image available in CSV | 5 URLs auto-derived via _F/_B/_U/_Z suffixes |
| 216 CATEGORY+SUB_CAT pairs | Manual creation of 2-level hierarchy | Direct CSV → PS mapping, sub-cats on the fly |
| Inconsistent CSV case ("garden", "HOME") | Duplicate categories in PS tree | Auto normalization to clean form |
| PHOTO_BIG URLs with stray space (~50 rows) | Silent 404, missing image | Auto regex trim ("<REF> .jpg" → "<REF>.jpg") |
| 50 Elemtechnic brands to create | Manual addition manufacturer by manufacturer | Auto creation at import (PS Manufacturer) |
| No supplier RRP price | Excel calculation of margins product by product | 4 modes (Fixed markup / Tiers / Wholesale / RRP) |
| Original image PrestaShop 9 BO | Broken image in PS9 BO (official bug) | PS9 BO fix included: 1:1 copy of original file |
You sell drills, screwdrivers, sanders, saws, hammer drills, tool sets online and want to multiply your catalog without managing physical stock.
You offer petrol/electric mowers, hedge trimmers, brushcutters, tillers, shredders, submersible pumps, basement pumps… and the spring/summer season is your peak activity.
You sell heating, lighting, ventilation, vacuum cleaners, electrical equipment, and need a reliable French B2B supplier with a wide seasonal catalog.
The Elemtechnic CSV exposes 12 main categories (with 2 case duplicates normalized) and 166 distinct sub-categories (216 CATEGORY × SUB_CAT pairs). The module preserves the supplier's native tree — no artificial fixed tree that would force tedious re-mapping.
| Main category | Volume | Sub-categories (excerpt) |
|---|---|---|
| 🌱 Garden | ~450 | Petrol/electric mower · Hedge trimmer · Edge trimmer · Brushcutter · Tractor · Tiller · Shredder · Blower vacuum… |
| 🏠 Home | ~384 | Heating · Lighting · Vacuum · Fan · Tarp · Electrical… |
| 🔧 Tools | ~233 | Screwdriver · Drill · Sander · Grinder · Circular saw · Jigsaw · Hammer drill · Sets · Kits… |
| ⚡ Power tools | ~67 | Battery · Compressor · Tool cart… |
| 🚧 Construction site | ~66 | Pressure washer · Blower vacuum · Concrete mixer · Generator… |
| 💧 Pumps | ~59 | Basement pumps · Submersible pumps · Surface pumps… |
| 🗄️ Workshop storage | ~26 | Tool carts · Modular storage… |
| ⚙️ Stationary | ~20 | Stationary tools |
| 🚲 Sport · 🚐 Transport | 3 | Minor categories preserved for catalog fidelity |
The unique feature of this module. The Elemtechnic CSV provides only one PHOTO_BIG column (URL of the main image). However, the Elemtechnic CDN usually hosts 4 variants per product (Front, Back, Up, Zoom) accessible by naming convention. The module automatically derives these 4 additional URLs by replacing .jpg with the suffixes.
| Position | Suffix | Generated URL (e.g. REF = SP1150-210) | View |
|---|---|---|---|
| Image 1 (cover) | (none) | https://eshop.elemtechnic.com/photos/SP1150-210.jpg | Standard 3/4 view |
| Image 2 | _F.jpg | SP1150-210_F.jpg | Front |
| Image 3 | _B.jpg | SP1150-210_B.jpg | Back |
| Image 4 | _U.jpg | SP1150-210_U.jpg | Up (top) |
| Image 5 | _Z.jpg | SP1150-210_Z.jpg | Zoom detail |
.jpg ("<REF> .jpg"). The module cleans them automatically with preg_replace('/\s+\.jpg$/i', '.jpg', $url).getimagesize(): JPEG/PNG/GIF/WebP, corrupted files rejected without crashing the import.ImageManager::resize()<id>.jpg file in addition to the variants — without this fix, the image does not appear in the PS9 BO product edit page (known PS9 bug).The Elemtechnic catalog does not contain size/color variants (each REFERENCE is a distinct finished product, like a complete "XYZ 18V drill"). Advantages:
| Feature | Value |
|---|---|
| Number of columns | 22 columns (NUM, REFERENCE, CATEGORIE, SOUS_CAT, TITRE, DESCRIPTION, EAN, POIDS, STOCK, PRIX, …, PHOTO_BIG, …, MARQUE, GARANTIE) |
| Separator | ; (semicolon) |
| Quotechar | " (double quote) |
| Encoding | Native UTF-8 (no Windows-1252, no conversion needed) |
| Decimals | With dot ("26.00", no French comma to convert) |
| Weight | In kilograms (imported as is on PS side) |
| Description | HTML accepted (with <br/>, lists, bold), multi-line in quotes |
| Catalog volume | 1,310 products · 50 brands · 216 distinct CATEGORY+SUB_CAT pairs |
If the DESCRIPTION column of the CSV contains at least 30 characters of text (after strip_tags), it is kept and reformatted in clean HTML. If empty or too short, the module automatically generates a structured HTML description from the TITRE, MARQUE, category and REFERENCE — to never have an empty product sheet harmful to SEO.
The module never overwrites a description provided by the supplier.
The scenario that changes everything:
→ No more lagging page. No more worry. You see everything that happens.
Elemtechnic peculiarity: the CSV does not provide an RRP price (recommended retail price). The module supports 4 strategies:
| Mode | Description |
|---|---|
| Fixed markup ⭐ (default) | A single % applied to all products (50% by default → PRIX × 1.5). The simplest way to start. |
| Tiers | Different % depending on the net purchase price tier (5 default tiers, configurable: 0-15€/15-30€/30-60€/60-120€/120€+). Optimizes margins on products by range. |
| Wholesale | Net purchase price as is (B2B sale to professionals). |
| RRP (= PRIX in absence of RRP) | Fallback mode: uses PRIX as selling price (so margin = 0). Useful while waiting for configuration. |
{name}, {brand}| CRON action | Role | Recommended frequency |
|---|---|---|
full_import | Full catalog import (creations + light updates) | 1×/day |
light_sync | Update price + stock + availability of already imported products (light mode) | every 2-4h |
cleanup_logs | Purge logs > N days (configurable retention) | 1×/week |
Flagship brands of the catalog (excerpt, by volume):
Triple confirmation (dialog box + DELETE input + button). No "Orphan attributes" checkbox (Elemtechnic has no size/color variants). No "Categories" checkbox: the tree is managed by the module and recreated if manually deleted from the BO.
.jpg automatically cleanedEtCompat compatibility layer + PS9 BO image bug fix includedDownload the ZIP, install via the BO. Auto-creation of 5 tables, of the Elemtechnic supplier, of the CRON key, of the 10 native main categories.
Go to Settings, paste the URL of the CSV file provided by Elemtechnic (placeholder: https://eshop.elemtechnic.com/exports/catalog.csv), configure the image-in-description option.
Fixed markup 50% by default, or choose Tiers (5 ranges) / Wholesale / RRP. Customizable SEO templates with {name}/{brand}.
Click "Start import". Test mode with 50 products first to validate, then full import 1,310 rows. You see each product created before your eyes.
| PrestaShop | 1.7.x → 9.x (tested on PS 9.0) |
| PHP | 7.4 minimum, recommended 8.1+ |
| MySQL / MariaDB | 5.7+ / 10.3+ |
| cURL | Enabled (CSV + image download) |
| Multi-shop | Compatible (forces CONTEXT_ALL for deletion) |
| Hooks used | None (no event chain pollution) |
| Class override | None (preserves your other modules) |
| AdminController | None |
| BO sidebar tab | None (does not pollute your menu) |
| Elemtechnic B2B account | Account required for billing and delivery |
| CSV URL | To be requested from your Elemtechnic sales rep |
A: Yes, fully compatible with PS 9.x. The module handles the specific PS9 migration where meta_keywords has been removed (automatic fallback to ps_tag) as well as the PS9 bug where the original image does not appear in the BO product edit page (fix by 1:1 copy of the <id>.jpg file in addition to the resized variants).
A: The download fails with a 404 and the module silently moves to the next one. No error generated. You get exactly the images that actually exist at the supplier, with no broken sheet. On the current catalog, the vast majority of products have at least the cover image, some 2-3 variants, a few all 5.
A: The module detects them automatically with a regex /\s+\.jpg$/ and cleans them before download ("SP1150-210 .jpg" becomes "SP1150-210.jpg"). Supplier bug handled transparently, you have nothing to do.
A: Yes, the module is specially optimized. The "1 product = 1 AJAX call" architecture guarantees no call exceeds 2-3 seconds. No risk of Apache 5xx timeout, unlike "all-in-one" import modules.
A: Elemtechnic only provides a net purchase PRICE (no recommended retail price). The module is configured by default in "Fixed markup 50%" mode (PRIX × 1.5). You can switch to "Tiers" mode (5 configurable ranges: 0-15€/15-30€/30-60€/60-120€/120€+) or "Wholesale" (B2B sale at purchase price) in the Margins & SEO tab.
A: At install, the module creates 10 native Elemtechnic main categories (Garden, Home, Tools, Power tools, Construction site, Pumps, Workshop storage, Stationary, Sport, Transport). Sub-categories are created on the fly at import from the SUB_CAT column of the CSV (with their exact name). Auto normalization merges case typos ("garden" and "Garden" → a single "Garden" category).
A: Yes. Automatic light mode: existing products are detected via their REFERENCE and only their price + stock are refreshed. Your descriptions, images, categories and tags are not rewritten — you keep your customizations. Ideal for daily refresh (or via CRON light_sync).
A: Import tab → Selective deletion → check "Imported products" → DELETE. You can add "Orphan brands / Supplier" for a complete cleanup. Triple confirmation to avoid mistakes.
A: "Stop" button available during import (UI) and during CRON (flag file). Clean stop at the end of the current product, state save for resume.
A: Yes. Categories and products are created on all active shops. Deletion forces CONTEXT_ALL to avoid the PS9 quirk where Product->delete() returns false in multi-shop.
A: Yes, but uninstall intentionally keeps your imported products (irreversible loss avoided). The "Selective deletion" zone allows granular cleanup with triple confirmation: products / brands / supplier / logs, independent.
The Elemtechnic dropshipping tools garden home module is the most complete tool to sell the 1,310 Elemtechnic references (drills, mowers, hedge trimmers, pressure washers, pumps, heating, lighting…) on PrestaShop. Once configured, it automatically imports the catalog at your pace with its 5 derived images per product.
⚡ INSTALLATION 3 MIN · 📚 REAL-TIME IMPORT · 🛡️ COMPATIBLE PS 1.7 → 9 · 🇫🇷 FRENCH SUPPORT
DB tables created (5): wp_elemtechnic_history, wp_elemtechnic_import_errors, wp_elemtechnic_product_meta (sku unique = REFERENCE), wp_elemtechnic_combination_meta (unused — no variants), wp_elemtechnic_category_mapping (csv_path unique = "MAIN > SUB" normalized)
PS configurations: WPET_SETTINGS (JSON), WPET_SUPPLIER_ID, WPET_CRON_KEY, WPET_LAST_IMPORT_AT, WPET_LAST_IMPORT_COUNT, WPET_CRON_LAST_*
Elemtechnic CSV (22 UTF-8 columns): NUM, REFERENCE (SKU), CATEGORIE + SOUS_CAT, TITRE, DESCRIPTION (HTML), EAN, POIDS (kg), STOCK, PRIX (net), TRANSPORT, EN_PROMO, PRIX_PROMO, PHOTO_110, PHOTO_300, PHOTO_BIG, REAPPRO, INSERT, UPDATE, CHARGE_COLIS, MARQUE, GARANTIE
Architecture: 5 clean PHP classes (EtCompat, EtCategoryTaxonomy, EtCategoryMapper, EtFeatureMapper [dead code by design], EtCsvImporter) + main module + AJAX router + CRON. No PrestaShop core class override. Code commented in French.
Synthetic columns generated in parseCsvToArray: 6 columns added to each row after reading — CATEGORY_COMBINED ("CATEGORIE > SOUS_CAT"), IMG_COVER (cleaned PHOTO_BIG), IMG_F, IMG_B, IMG_U, IMG_Z (URLs derived via suffixes).
Shared engine compatibility aliases: sku → reference, name_fr → titre, description_fr → description, brand → marque, parent → reference, price → prix, recommended-retail-price → prix (in absence of RRP), weight → poids, qty → stock, category → CATEGORY_COMBINED, image-url-1..5 → IMG_*.
Category mapping: direct and deterministic (CSV provides MAIN+SUB explicitly). No fuzzy matching needed. DB cache to reuse resolved associations.
Security: pSQL() everywhere, uploads/ folder protected, image format validation (getimagesize), native PS CSRF on AJAX, systematic HTML escapes (htmlspecialchars), hash_equals() on CRON key.
PS9 specific compatibility: automatic meta_keywords → ps_tag/ps_product_tag migration via Tag::addTags(), handling of the Product::delete() quirk that returns false in multi-shop, PS9 BO original image fix (1:1 copy of the <id>.jpg file before the ImageManager::resize variants).
Supplier bug handling: preg_replace('/\s+\.jpg$/i', '.jpg', $url) applied on PHOTO_BIG in parseCsvToArray for the ~50 rows with stray space.
📦 Module developed by WebPoint · webpoint.fr · Regular updates · Clean & commented code
play_circle_filled
play_circle_filled
play_circle_filled
play_circle_filled
Aucun avis pour ce produit pour le moment.
Reference: WP-DBR-EHU
Brand: WebPoint
Reference: WP-SDE-MVR
Brand: WebPoint
Reference: WP-YNS-PLX
Brand: WebPoint
Reference: WP-RSV-CSV
Brand: WebPoint
Reference: WP-MAL-XML
Brand: WebPoint
Reference: wp-watchimport-dropshipping-montres-ila-uhren-csv-prestashop
Brand: WebPoint
Reference: WP-TFC-CSV
Brand: WebPoint
Reference: WP-DSX-AFR
Brand: WebPoint
Maîtriser le State Management en Clojure : Atoms, Refs, Agents et STM 🚀 Dans le monde de la programmation...
Lire la suiteSupervision Tree in Elixir: Achieving Infinite Depth and Immortal Hierarchies 🌳 In the world of concurrent...
Lire la suiteMaîtriser gRPC en Go : Services avec Protocol Buffers et Streaming RPCs 🚀 Dans le monde des microservices, les...
Lire la suite
Turnkey module to automate your tools, garden and home dropshipping with Elemtechnic, French B2B wholesaler: CSV import of 1,310 products (drills, lawnmowers, hedge trimmers, pressure washers, heaters, lighting, pumps…) in one command.
✅ 1,310 references · 50 brands · 10 native categories + sub-cats on the fly
✅ Multi-image derivation via _F/_B/_U/_Z suffixes (Front/Back/Up/Zoom)
✅ 1 CSV row = 1 product (no variants to manage)
✅ Native UTF-8 encoding · 4 pricing modes · 24/7 CRON · Compatible PS 1.7 → 9.x
✅ PrestaShop 9 BO original image fix included
You configure. The module imports. You sell hardware. 🔧