Back to work
Collectables Marketplace

Canadian TCG Exchange - Trading Card Game Marketplace

Canadian peer-to-peer trading card marketplace I built on NestJS and Next.js with Stripe Connect escrow, Shopify inventory sync, and a 200,000-card catalog.

Outcome

Live marketplace processing real transactions

CTCGX is a Canadian alternative to TCGPlayer that processes real seller-to-buyer transactions with escrow payments and multi-channel inventory tools.

Overview

Canadian trading card sellers had no domestic peer-to-peer marketplace, so they used TCGPlayer in the US or CardMarket in Europe and absorbed the cross-border fees and shipping costs. I built CTCGX from scratch as the Canadian alternative, with a 200,000-card catalog across eight TCGs, Stripe Connect escrow payments, multi-carrier shipping through EasyPost, and bi-directional Shopify inventory sync so existing storefronts could plug in without rebuilding their operations. The platform processes real transactions across Pokemon, Magic, Yu-Gi-Oh, Lorcana, and four other major card games. Underneath, the stack runs on NestJS, Next.js, PostgreSQL, and Redis, with a REST API, webhooks, and an MCP server for AI-driven inventory management.

What it does

  • Any user can open a storefront with team roles and permissions, then start selling across a 200,000-card catalog spanning Pokemon, Magic: The Gathering, Yu-Gi-Oh!, Disney Lorcana, Flesh and Blood, One Piece, Star Wars: Unlimited, and Riftbound.
  • Stripe Connect handles escrow payments with automated fund release and per-seller platform fee overrides, so sellers get paid only after buyers confirm.
  • Multi-carrier shipping through EasyPost generates labels and tracking across Canada Post, UPS, FedEx, Purolator, DHL, and UniUni.
  • Sellers can connect existing Shopify stores and keep inventory synchronized across both platforms automatically, with no manual reconciliation.
  • A public REST API with webhooks and an MCP server lets sellers integrate AI agents and external tools into their inventory workflow.
  • OAuth sign-in across Google, Microsoft, LinkedIn, and Discord pairs with session-based security and CSRF protection.
  • Admins moderate listings, manage stores, and review platform analytics from a dedicated panel, while buyers and sellers receive real-time order updates through Server-Sent Events and lifecycle emails.

Stack

Next.jsReactTypeScriptNestJSPostgreSQLPrismaRedisStripe ConnectEasyPostShopify APIAWS S3CloudFrontDockerCloudflare

Screens

Canadian TCG Exchange - Trading Card Game MarketplaceCanadian TCG Exchange - Trading Card Game MarketplaceCanadian TCG Exchange - Trading Card Game MarketplaceCanadian TCG Exchange - Trading Card Game MarketplaceCanadian TCG Exchange - Trading Card Game MarketplaceCanadian TCG Exchange - Trading Card Game Marketplace