E-commerce Completed

Karati

WooCommerce store for a Mexican jewelry brand (2019-2025): custom plugin, JWT API for the ERP, and 407 articles plus 4 years of Search Console rescued on migration.

Role
Full Stack Developer
Year
2019
Published
December 15, 2023
Karati project brand cover with glassy jewelry icons (diamond, pendant, shopping bag and ring) in gold and violet on a dark background.

Karati is a Mexican jewelry brand selling retail and wholesale. Its online store ran on WordPress + WooCommerce from 2019 to 2025 — a catalog of over 7,600 products with variations, 175 commercial pages and a blog that became the real engine of its organic traffic. In 2025 the operation moved to Shopify. I led both stages.

The WooCommerce store (2019 – 2025)

  • Custom karati plugin with the logic WooCommerce doesn’t ship: a REST endpoint (wc/v3/stockfile) that receives the ERP’s stock file and updates inventory in the background, product feeds for the sales channels, marketing pixels, AMP pages and automatic cleanup of dormant products.
  • JWT-authenticated REST API so the company’s ERP (Joyanet, built in-house) could talk to the store without WordPress sessions.
  • Astra + Astra Addon theme with Elementor Pro, so marketing could build campaign and category landings without touching code.
  • Payments: MercadoPago and PayPal.
  • Sales channels & marketing: Facebook for WooCommerce, TikTok for Business, Google Listings & Ads, Mailchimp, Hotjar and WhatsApp click-to-chat.
  • Operations: Cloudflare as CDN, the WPMU DEV stack (Hummingbird for caching, Defender for security, Snapshot for backups), advanced product search and a customized checkout.
  • Closed out on WordPress 6.7 + WooCommerce 9.7 over MariaDB 10.5.

What the migration left behind: a 12-year archive that couldn’t be lost

When the store moved to Shopify, two things were left behind, and I recovered them from the full WooCommerce backup:

  • The blog: the Shopify migration carried 72 articles; WordPress had 407, with 1,535 reader comments accumulated since 2014. I extracted all of it from the backup, comments included — Shopify’s Admin API has no way to create them, so they could never go back into the store.
  • Four years of Search Console (2021 – 2025): Google only keeps 16 months, but the SEO plugin cached the API locally. That history is the only copy in existence, and it’s what says which content is worth restoring and which redirects actually matter.

Tech stack

  • PHP 7.4 → 8.x, WordPress, WooCommerce, MariaDB
  • Astra + Elementor Pro, jQuery + vanilla JavaScript
  • Cloudflare, WPMU DEV, MercadoPago, PayPal

Goal

Keep a digital sales channel running for six years with custom development wherever the platform fell short — stock, feeds, ERP integration — and, when the platform changed, preserve the asset that took the longest to build: twelve years of content and the organic traffic that came with it.

07 / Contact

Did any of this help? If your company needs it built, let's talk.

Fill out the form and I'll reply within 24 hours. You can also email me directly: