Freelance Shopify Plus and B2B developer, based in Madrid and working remotely, in Spanish and English.
On Shopify since 2021, freelancing since 2022, working with brands and agencies in Spain and the rest of Europe.
- B2B wholesale storefronts: companies, locations, catalogs, price lists, quantity rules and volume tiers, on Shopify B2B with Plus and without it.
- Shopify Functions: discounts, cart and checkout validation, payment and delivery customisations.
- Checkout Extensibility and customer account extensions.
- Custom embedded apps: Node.js, Express, Shopify CLI, Admin GraphQL integrations.
- Core Web Vitals on themes that were not built with them in mind.
shopify-checkout-lab. Real merchant tickets solved with Shopify Functions. Each one ships with its input query, its merchant settings in a metafield and its tests, and is playable at nicolasmateos.com/#lab running the same source file that lives in the repo.
shopify-b2b-order-portal. A wholesale order form for Shopify B2B that does not need Plus. Access decided by one Liquid condition, catalog prices and volume breaks displayed rather than recalculated, the catalog's quantity rule driving the input, and the whole order sent in a single cart call. Built on Dawn.
portfolio. nicolasmateos.com itself: Astro on Cloudflare Workers, Spanish and English from one content model, with a build that fails when a translation or a meta description is missing.
Shopify B2B without Plus: what B2B really covers on Basic, Grow and Advanced, where the wall is (three active catalogs, assignment through markets), and what to do when you hit it. In Spanish: Shopify B2B sin Plus.
Émolo · Vidal & Vidal · IVB Wellness · Hifas da Terra · MT Helmets · Vini Trading · Ewheel · Cosmeticos24H · Hagen · The One Percenters
Each with client, year, scope and stack: nicolasmateos.com/en/projects (proyectos).
Wholesale portals, Functions, checkout work and theme performance. Tell me how your prices and customer tiers are set up and I will tell you what fits your plan, what does not, and what is cheaper in the medium term.

