Dollar Blinds: A Custom Checkout Engine for Made-to-Measure Shades
How we bypassed Shopify’s native cart entirely to deliver configuration-based pricing, a guided product configurator, and a resilient Draft Orders checkout – for a business Shopify wasn’t built to sell.
Project Snapshot
CLIENT
Dollar Blinds
INDUSTRY
eCommerce / Home Improvement – Custom Window Shades
Dollar Blinds is an eCommerce business selling made-to-measure window shades, running its storefront on Shopify Plus. Every product is sold by custom configuration, width, height, color, mounting style, shade-division mode, and add-ons, rather than as a fixed SKU, which put it fundamentally at odds with how Shopify’s cart and checkout are built to work.
The Challenge
Selling configurable, made-to-measure shades on Shopify surfaces problems that standard themes and apps aren’t built to solve.
Pricing depends on a combination of width, height, color, and add-ons, and Shopify’s native cart has no concept of configuration-based, calculated pricing
Shopify checkout ignores line-item property prices entirely, so a custom price per cart item isn’t natively supported by the platform
Certain products need to be split into multiple physical pieces at checkout, each priced and configured independently, with auto-mirroring for symmetry
The product customizer app stores configuration in JavaScript state rather than the DOM, and reuses field IDs across sections, making reliable validation and tracking difficult
Our Approach
01
Bypass the Cart, Not the Problem
Rather than forcing Shopify’s native cart to support calculated, configuration-based pricing, the entire purchase flow was built around the Shopify Draft Orders API, the one path where custom pricing and discounts are honored end-to-end.
02
Build a Dedicated Serverless Layer
Rather than embedding pricing and discount logic inside the Shopify theme, a separate serverless layer was chosen to keep that logic controlled, testable, and independent of theme changes.
03
Engineer Around the Third-Party App, Not Against It
TEPO wasn’t built for this level of control, so rather than replacing it, it was instrumented to track selection state it doesn’t expose cleanly, working within its existing quirks rather than fighting them.
04
Guide the Customer, Don't Just Configure Them
A configuration with six interacting variables can overwhelm a buyer if presented all at once, so the decision was made to walk customers through one step at a time rather than exposing every option on a single page.
05
Prioritize Reliability at the Money Moments
A checkout this custom introduces new points where things can silently break, so edge cases at the moment of payment were treated as first-class problems to solve, not exceptions to patch later.
FINAL OUTCOME
Website
Results & Impact
Dollar Blinds went from a standard Shopify install to a platform capable of handling genuinely complex, made-to-measure product configuration: accurate dynamic pricing, a guided buying experience, and a checkout that holds up under real-world edge cases.
4
Custom Systems Engineered
2
Native Shopify Limitations Solved
4+
Checkout Reliability Fixes Shipped
Core Features Delivered
✓
Dynamic Configuration-Based Pricing
A custom cart system calculates pricing from width, height, color, and add-on selections in real time, then routes the final configuration through Shopify’s Draft Orders API, the only reliable path since Shopify checkout ignores line-item property prices.
✓
2-in-1 Shade Division Logic
Dedicated shade-division logic automatically splits qualifying products into correctly proportioned, mirrored panels, including a placeholder-reset pattern for the fraction dropdown, so multi-panel configurations stay accurate.
✓
Guided Options Configurator
A guided accordion flow with a sticky visual progress stepper walks customers through every configuration step in strict sequence, with a fixed radio-isolation bug from TEPO’s reused field IDs and dynamic form margin adjustment.
✓
Custom Draft Orders Checkout Engine
A Vercel serverless API creates Shopify Draft Orders with custom pricing and applied discounts via GraphQL, with dedicated endpoints for draft-order creation, discount validation, and order-status checks.
✓
Discount Code & Analytics Integration
Discount code validation, Meta Pixel, and GA4 event tracking are integrated directly into the custom cart flow, so marketing and analytics keep working even though the checkout path itself is entirely custom-built.
✓
Checkout Reliability Engineering
Fixes for real checkout failure points, Shop Pay hijacking invoice URLs, popup blockers killing post-async redirects, and CSS-locked storefront elements, keep the purchase flow working reliably in production.
Selling configurable, made-to-measure shades exposed problems Shopify’s native cart and checkout aren’t built to solve, so a custom pricing and checkout system was built around the Draft Orders API instead.
A custom dynamic pricing and checkout system that bypasses Shopify’s native cart, using the Draft Orders API, a guided product configurator, and a Vercel serverless backend.
Through iterative, hands-on engineering with rapid feedback cycles, targeted, surgical fixes to a mature, actively evolving codebase rather than ground-up rewrites.
Because Shopify checkout ignores custom line-item pricing entirely, Draft Orders are the only mechanism that supports both calculated, configuration-based pricing and discount codes together.
It layers custom logic, panel-splitting with auto-mirroring, a guided sequential stepper, and MutationObserver-based state tracking, on top of a third-party app that wasn’t built to support this level of control.
Yes. Syndell builds custom pricing and checkout systems for products Shopify’s default cart wasn’t built to sell, including configuration-based pricing, multi-part products, and checkout logic that needs to run outside Shopify’s native flow.
Selling Something Shopify's Cart Wasn't Built to Handle?
Configuration-based pricing, multi-panel products, or checkout logic that breaks under real complexity, share the details and see what a custom-built solution actually takes.
Kayme does the hard part well – designing dresses people genuinely want, with a loyal following built over time. The backend wasn’t carrying its weight: Magento couldn’t scale without inviting fresh problems, and orders had to be manually reformatted for the shipping company by hand, every single time.
Little West does the hard part well – cold-pressed juice from West Coast produce, bottled within 48 hours of harvest, with a Farmlink Project partnership. The website wasn’t carrying its weight: “fresh” is an overused, easily-doubted claim in this category, and the old site gave nothing concrete to back it up.
Rollen does the hard part well – ethically sourced fine jewelry and a full lab-grown diamond line across rings, earrings, and a men’s collection. The website wasn’t carrying its weight: jewelry buyers expect to touch a piece before buying, and the old site gave no real reason to trust a purchase sight unseen.
Business & Pleasure Co. does the hard part well – premium beach and outdoor furniture, including a Jenni Kayne collaboration, sold to retail and trade buyers. The website wasn’t carrying its weight: some products offered 200+ fabric combinations, leaving customers with decision overload instead of a confident choice.
Enwolt does the hard part well – an authorized EU distributor of ENGWE and VARUN e-bikes, with free shipping and a one-year warranty. The website wasn’t carrying its weight: customers had real unanswered questions on legality, range, and charging, and Enwolt needed its own credibility independent of the manufacturer names.