Back to work

Elite Surfing Brasil · Multichannel e-commerce · 2025 – 2026

Three sales channels — consumer, B2B and dropshipping — on a single stock.

E-commerce for the surf accessories brand I founded in 2010, built from scratch: payments, shipping, B2B for resellers, direct sales and dropshipping.

  • E-commerce
  • B2B
  • Payments
Client
Elite Surfing (own brand)
Status
In production.
Elite Surfing Brasil store

Store homepage.

Context

I am the client. I know the product, the resellers and the carriers, and wanted a store serving both end consumers and the B2B network.

The problem

Resellers buy with a company tax number and tiered discounts; consumers buy with PIX and installments; partners sell the catalog in their own stores. Three channels, one stock.

My role

Sole developer and business owner.

Solution

React/Vite + Express/MongoDB monorepo. Payments migrated from Pagar.me to Mercado Pago (Card Brick, dynamic-QR PIX, boleto, HMAC webhook). Melhor Envio with tracking sync via webhook and polling. B2B area with company-number autofill (BrasilAPI) and discount tiers. Direct sales with packing lists and WhatsApp sharing. Dropshipping with Rio Surf Shop via a WordPress plugin and per-partner API keys.

What was built

  • Persistent cart with merge on login, guest checkout, admin-managed coupons.
  • Verified reviews tied to real orders.
  • Anti-fraud with CPF validation and blocklist.
  • WSL blog with admin-managed rankings and calendar for organic traffic.
  • JWT in httpOnly cookies with separate middleware for customers and admin.

Outcome

Store in production selling to consumers, resellers and dropshipping partners. The architecture was migrated to Next.js in the Surfers Paradise project.

Stack

React 19 · Vite · Express · MongoDB · Mercado Pago · Melhor Envio · Cloudinary · Resend · JWT

Next project

Go Portugal Tours

A booking site built by someone who ran the business.

Booking site for private tours in Portugal: 24 data-driven tours, pricing by passenger count, validated forms, PT/EN.

View case study
Go Portugal Tours