
De leverancier mailt een Excel: rijen hoogte, kolommen breedte, in elk vakje een prijs. Jij moet dat op Shopify verkopen. Geen offerte per mail. Geen “we rekenen het na”. De klant vult twee maten in, de prijs verschijnt.
Een Shopify lookup-tabel prijsmatrix is precies dat grid. Geen formule `breedte × hoogte × tarief` — want jouw tarief is géén vast bedrag per m². Cel 80×120 kost iets anders dan de cel ernaast. Dat past niet in een SKU, en ook niet in honderd if/then-regels.
Options Price Calculator heeft daar op Premium een tab voor: 4b. Lookup tables. De functie heet `lookup2d()`. Dit stuk is die matrix, geen planvergelijking. Gisteren ging het over Starter of Premium; lookup stond daar als docs-extra. Hier de bouw.
Shopify Help Adding variants blijft drie options en 2048 variants. Niet 100. Drie assen. Kleur, maat, materiaal. Elke combinatie is een SKU met voorraad.
Een prijsmatrix heeft twee *continue* assen plus een celwaarde. Tien breedtestappen × twaalf hoogtestappen is al 120 cellen. Doe daar vijf kleuren bij en je zit ver over wat je nog wilt beheren — nog vóór de 2048-grens. Elke mm als variant is onmogelijk.
Line item properties in het thema (`properties[Breedte]`) wijzigen de prijs niet. Een thema-invoer is een notitie op de orderregel. Checkout rekent die niet.
Native is dus: SKU-varianten. Geen raster. Geen “zoek de cel bij deze twee getallen”.
Built for Shopify, 5.0, 26 reviews. Listing-plannen: Free $0 (20 uses), Starter $9.99, Premium $14.99. Lookup-tabellen staan in de docs Lookup tables als Premium, niet op de Starter-kaart.
Een variant per cel. 80×100, 80×110, 90×100. Voorraad per cel die je niet hebt. Een nieuwe jaartabel = opnieuw 80 SKU’s. Binnen drie options raak je de derde as (kleur) kwijt.
Een staffel in je hoofd, dan mailen. De productpagina toont “vanaf €89”. De echte prijs komt in WhatsApp. Conversie zakt, fouten stijgen.
If/then per drempel. Premium kan voorwaardelijke formules. Dat is iets anders. Een matrix van 20×20 is geen 400 conditions. Het is één tabel.
`breedte * hoogte * 42`. Werkt als jouw prijs écht per m² is. We schreven dat bij prijs per m². Leveranciers van jaloezie, glas en panelen werken zelden zo. Zij hebben een *staffelraster*.
In de calculator: Formula-stap. Tabs: 4a Custom variables, 4b Lookup tables, 4c Formula, 4d Calculation display (ook Premium). Open 4b.
Een tabel heeft:
Naam / id — die id gebruik je in `lookup2d(table_id, x, y)`.
X-veld en Y-veld — welke number-fields de assen voeden. Zonder die koppeling kun je de chip niet in de formule zetten.
Prijsgrid — eerste rij = X-waarden, eerste kolom = Y-waarden, rest = prijzen. Elke cel is een getal.
Buiten het bereik — *Clamp to nearest edge* (aanbevolen) of *Use default value*.
Limieten uit dezelfde docs: maximaal 50 tabellen per calculator, maximaal 50×50 cellen per tabel. Rijen en kolommen voeg je toe met + / −.
CSV: hoekcel leeg, eerste rij X, eerste kolom Y, rest prijzen. Export om te checken. Import om de Excel van de leverancier in één keer te laden. Geen variant per cel.
`lookup2d` mag in de hoofdformule (4c), in een custom variable (4a) en in een Premium if/then-tak. Voorbeeld uit de docs:
``` lookup2d(price_table_1, width_m, height_m) ```
Millimeters naar tabelstappen, ook uit de docs:
``` lookup2d(pg0_brutto, Math.ceil(breedte_mm / 100) / 10, Math.ceil(hoogte_mm / 100) / 10) ```
Assen strikt oplopend: 0.5, 0.6, 0.7 — niet 0.7, 0.5. Zet min/max op de number-fields gelijk aan het raster. Anders clamt een leeg veld stil naar de randprijs. Test met Try X / Try Y in de tabel én met de formule-preview.
Tip uit de docs: deel afronding (`Math.ceil`, `Math.round`) af in een custom variable, en laat `lookup2d` die variabele lezen. De matrix blijft leesbaar.
Shop “Raam & Rol”. Vijf kleuren als Shopify-variant (SKU + voorraad). De prijs komt uit een PDF: breedte 40–200 cm in stappen van 10, hoogte 60–220. Geen vast m²-tarief.
Installeer Options Price Calculator. Lookup vraagt Premium ($14.99). Starter bouwt de velden; de tabeltab blijft dicht.
Number-fields `breedte_cm` en `hoogte_cm`. Min/max = 40–200 en 60–220.
Formula → 4b. Nieuwe tabel `jaloezie_net`. X = `breedte_cm`, Y = `hoogte_cm`. CSV van de leverancier importeren. Hoekcel leeg laten.
Buiten bereik: clamp. De min/max op de velden zorgen dat de klant niet buiten het raster typt.
4c: `lookup2d(jaloezie_net, breedte_cm, hoogte_cm)`. Geen `* tarief`. De cel *is* de prijs.
Checkbox *Motor* (waarde 45) mag je optellen: `lookup2d(jaloezie_net, breedte_cm, hoogte_cm) + motor`. Dat is geen tweede matrix.
Koppel de calculator per kleurvariant. Theme-editor: app-block onder de prijs. Zelf een 80×140 bestellen tot checkout hetzelfde bedrag toont als cel 80×140.
Kleur blijft native variant. Maat blijft input. Geen 120 extra SKU’s. Shopify blijft op drie options.
Glas of plexi in millimeters: gebruik de `Math.ceil`-mapping hierboven. De tabel denkt in decimeters, het veld in mm. Dat is geen tweede product — het is dezelfde `lookup2d`.
Open de listing. Check Premium; lookup is geen Starter-feature.
Zet twee number-fields neer. Geen dropdown “80 / 90 / 100” tenzij je assen écht zo grof zijn.
Importeer de CSV. Controleer oplopende assen. Elke cel een getal.
Bind X en Y. Zet `lookup2d` in 4c, of eerst in 4a als je moet afronden.
Min/max = tabelrand. Probeer een waarde nét erbuiten: clamp of default, niet “leeg = goedkoopste cel” zonder dat je dat wilt.
Koppel per variant. Server-side price validation hoort bij de app; claim geen “elk thema zonder setup”.
Conditional pricing blijft iets anders: drempels, minimumprijs, toeslag alleen bij een optie. Zie voorwaardelijke prijzen. Een raster van cellen hoort in 4b, niet in 400 branches.
Een Shopify lookup-tabel prijsmatrix is het Excel-raster van je leverancier, live op de productpagina. Premium, tab 4b, functie `lookup2d`. Maximaal vijftig tabellen, vijftig bij vijftig cellen, CSV in en uit, clamp of default buiten het bereik. Shopify zelf stopt bij drie options en 2048 variants. Die limiet omzeil je niet met meer SKU’s — je laat de maat een veld zijn.
Zet de matrix in Options Price Calculator. De klant typt twee getallen. Jij onderhoudt één grid, geen honderd varianten.
Diensten
Reviews
5/5
Mail: info@onlineorigins.nl
Tel: 073 234 0612
KVK: 89825624
BTW: NL865123639B01
Bruistensingel 500,© 2026 Online Origins