Project Description
Project overview
This project was a custom WordPress and WooCommerce eSIM integration built to connect an existing ecommerce setup with the eSIMGO v2.5 API.
The goal was not to rebuild the store, replace WooCommerce or introduce a separate customer platform. The goal was to extend the existing WordPress website so eSIM products, top-ups, activation details, usage data and support workflows could all work inside the current ecommerce environment.
I designed and built a modular custom plugin called eSIMgo Integration that handles eSIM provisioning, top-up flows, customer account dashboards, activation delivery, webhook-based usage tracking, bundle revocation, refund support and admin-side operations while staying aligned with WordPress and WooCommerce conventions. This kind of project is most closely aligned with WooCommerce development, plugin development and ongoing WordPress support.
The challenge
The project needed to turn a standard WooCommerce store into a working eSIM sales and account-management platform. That meant connecting paid orders to external API provisioning, keeping customer-facing activation data usable, supporting repeat top-up purchases, and giving the business enough operational control to manage refunds, logs and troubleshooting safely.
The work had to extend the existing WordPress and WooCommerce setup rather than replacing the ecommerce platform.
Paid WooCommerce orders needed to trigger reliable eSIM provisioning through the eSIMGO API.
Customers needed clear activation details on the thank-you page, in emails and inside their account area.
The system had to support both first-time eSIM purchases and top-ups against a selected ICCID.
The store needed a My Account experience that combined WooCommerce order data with live eSIM and bundle information.
Admins needed logs, connection testing, metadata recovery, refund helpers and moderation around customer-impacting actions.
What was delivered
I built a custom plugin architecture that connected WooCommerce, customer account flows and eSIMGO API operations into one maintainable WordPress extension. The plugin handled provisioning logic, order metadata, activation rendering, account dashboards, webhook ingestion and support workflows without requiring a separate application layer.
Built a dedicated plugin to manage provisioning, top-ups, activation data, usage tracking and admin tools in one place.
Connected paid WooCommerce orders to new eSIM creation and existing-eSIM bundle application logic.
Added a custom My Account area that surfaces owned eSIMs, bundles, history and live usage information.
Rendered installation and QR-based activation details on the thank-you page and in transactional emails.
Built a signed REST callback flow to store usage snapshots and keep customer-visible balance data updated.
Added bundle revoke flows, inventory refund tooling and a customer credit ledger for post-sale support.
Core functionality included
Paid or completed orders trigger eSIMGO provisioning and store the resulting identifiers and activation data in order metadata.
Customers can select an existing ICCID and buy a compatible top-up bundle through WooCommerce.
Added eSIM-specific pending and failed statuses for better operational visibility during fulfillment.
Customers can access QR codes, SM-DP+ information and install details immediately after purchase.
The same key setup information is also available in WooCommerce email flows for better delivery reliability.
Added a custom WooCommerce My Account section for owned eSIMs, status, usage and related actions.
Customers can view current bundle information, usage snapshots and history pulled from the API and local storage.
Signed usage callbacks update remaining data, initial allocation, unlimited flags and received timestamps.
Customers can request bundle removal from the account dashboard when supported by business rules.
The revoke flow can also request refunds where valid and communicates clearly when a bundle is no longer refundable.
Added a backend workflow for refunding unused inventory bundles back to the organisation balance.
Built an admin-managed credit system for recording, confirming and tracking bundle-related customer credits.
Added admin tools for API validation, structured logging and troubleshooting.
Included a backfill tool to restore missing ICCID metadata on older orders.
Added plugin-level CSS and JavaScript for the account dashboard and eSIM interactions without redesigning the whole site.
Key architecture decisions
The most important architectural decision was to keep the solution plugin-first and embedded inside WordPress rather than pushing the business into a separate SaaS dashboard or a parallel custom application. WooCommerce remained the transaction layer, while the plugin became the orchestration layer between orders, users, metadata and the eSIMGO API.
Another key decision was to treat WooCommerce order and line-item metadata as the operational source of truth for activation and lifecycle data. That allowed the system to show meaningful customer-facing information quickly, reduce unnecessary API calls and recover gracefully when some data was already stored locally.
The build also balanced live API access with caching, webhook ingestion and admin recovery tooling. Instead of depending on one fragile real-time pathway, the plugin combines synchronous provisioning, transient caching, signed webhooks, local snapshot storage and manual admin tools so the platform stays usable even when edge cases appear.
New capability was added without rebuilding the ecommerce platform or breaking WordPress conventions.
Orders, account pages and email flows stayed inside the existing store experience.
ICCIDs, bundle references, activation details and usage values were persisted into WordPress and WooCommerce data structures.
Live lookups were supported by caching, stored snapshots and recovery utilities.
Usage callbacks were signed, validated and deduplicated before local processing.
Refunds, credits, logs and connection tests were built into the WordPress backend for maintainability.
Results and outcomes
The result was a much more capable WooCommerce eSIM platform delivered inside an existing WordPress build. Customers can now buy, activate, review and manage eSIM-related services through a clearer account experience, while the business has stronger operational tooling for fulfillment, support and exception handling.
WooCommerce now supports real provisioning and top-up workflows instead of acting like a simple static storefront.
Activation details, QR access and account visibility reduce friction after checkout.
Customers can see their eSIM inventory, bundle information and usage state in one place.
Admins have tools for testing connectivity, tracing issues, recovering metadata and processing refunds or credits.
Revocation and refund logic were implemented with eligibility checks and clearer user messaging.
The plugin structure supports future improvements such as richer bundle filtering, additional dashboards and deeper automation without changing the store architecture again.
Technology used
The project was delivered in WordPress and WooCommerce using a custom plugin architecture, PHP, custom WooCommerce hooks, WordPress REST API endpoints, admin settings pages, custom database tables, structured logging, transient caching, scoped CSS, lightweight JavaScript and the eSIMGO v2.5 API.
This work is most relevant to WooCommerce development, plugin development and ongoing support for stores with more complex product and post-sale workflows.
Next steps
This project shows how an existing WordPress and WooCommerce store can be extended into a much more capable digital-service platform without replacing the whole ecommerce stack. By using plugin-first architecture, careful order metadata design and admin-safe operational tooling, it becomes possible to support provisioning, account management and post-sale support inside a familiar WordPress environment.
If you need a similar build involving WooCommerce development, custom plugin development or custom WordPress development, this kind of architecture is a strong fit for complex product flows that still need to stay manageable for content and operations teams.
Leave A Comment