Drupal is a registered trademark of Dries Buytaert
cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8). editoria11y 2.2.22 Minor update available for module editoria11y (2.2.22). ai 1.2.13 Minor update available for module ai (1.2.13). ai 1.3.2 Minor update available for module ai (1.3.2). moderated_content_bulk_publish 2.0.51 Minor update available for module moderated_content_bulk_publish (2.0.51). moderated_content_bulk_publish 2.0.50 Minor update available for module moderated_content_bulk_publish (2.0.50).

wt_commerce

No security coverage
View on drupal.org

The WT Commerce Suite is an ultra-lean, decoupled e-commerce and booking ecosystem. It seamlessly unifies physical products, hotel rooms, and hourly appointments into a single Viva Wallet smart cart.

The WT Commerce Suite is a lightweight, high-performance ecosystem built to solve a massive problem in the web development space: the database bloat and timezone bugs associated with traditional e-commerce and booking frameworks.

Built natively on Drupal's Entity and Field APIs, this module provides an enterprise-grade but incredibly simple solution for small and medium-sized businesses (SMBs). It decouples complex logic, separating the calendar from the checkout, and securely hands off the heavy lifting to the bank via a native Viva Wallet Smart Checkout integration. If you need a fast, profitable hybrid storefront where customers can buy a physical product and book a service with zero friction, this is your solution.

Features

Basic Functionality:
The suite allows you to sell physical goods, book overnight hotel rooms, and schedule hourly professional appointments—all from one unified, slide-out shopping cart.

Unique Features:

  • Universal Slide-Out Cart: Automatically detects digital goods (bookings) and dynamically hides physical shipping requirements.
  • Viva Wallet Integration: Secure OAuth2 API connection and asynchronous Webhook verification using strict cryptographic tokens.
  • Native Multi-Currency (DCC): Seamlessly handles international payments by reading card origins (BIN) and offering local currency conversions directly on the Viva gateway.
  • Bulletproof Calendar Math: Completely eliminates server-to-browser timezone shift bugs by storing appointment slots as raw strings.
  • Automated Calendar Sweepers: Configurable Cron jobs automatically delete abandoned, 'pending' bookings, instantly freeing up your schedule.
  • PRG Pattern Protection: Prevents duplicate cart additions on accidental browser refreshes.

Use Cases:
This suite is perfect for hybrid businesses. For example: A spa that needs to book 60-minute massage appointments, while simultaneously selling physical bottles of lotion and overnight wellness retreat rooms, all in a single checkout flow without requiring dozens of conflicting third-party plugins.

Post-Installation

Because this is a multi-module suite, you must first enable the core WT Simple Pay module. You can then optionally enable the WT Simple Booking (Rooms) or WT Slot Booking (Appointments) extensions.

Once installed, the system automatically creates the necessary Content Types (wt_product, wt_room, wt_service) and native Views Dashboards.

Your next steps:

  1. Navigate to Configuration > Web services > WT Commerce: Payment & Cart Setup.
  2. Enter your Viva Wallet API credentials (Client ID, Secret, and Source Code) and set your Webhook Security Token.
  3. Go to Structure > Block layout and place the "WT Cart Toggle Button" in your site's Header, and the "WT Slide-Out Cart Drawer" in your Footer.
  4. Access your automatically generated operational dashboards at /admin/wt-commerce/orders.

Additional Requirements

This project is engineered to be exceptionally lean and self-contained. It relies on Drupal Core's native HTTP client (Guzzle) and does not require any external Composer libraries.

  • Drupal Core:11.x
  • PHP: 8.1 or higher
  • External Account: A Viva Wallet Merchant Account (Sandbox or Production) is required to process payments.

Similar projects

  • Drupal Commerce: The gold standard for massive retail. If you need multi-warehouse SKU decrementing, real-time FedEx weight calculations, and complex global taxation, you need Drupal Commerce. However, if you simply want a lean hybrid store for basic products and bookings, WT Commerce provides a frictionless alternative without the massive database overhead.
  • BAT (Booking and Availability Management Tools): BAT is an incredibly powerful engine for state-driven availability. WT Commerce differs by offering a much simpler, decoupled approach specifically tied to a unified shopping cart, favoring mathematical slice-logic over heavy calendar entities.

Supporting this Module

This suite is built and maintained with ❤️ by Web-Thread.
To support this module, please consider starring the project repository, reporting issues in the queue, and using Viva Wallet to leverage their 0% acceptance fee corporate debit card program.

Community Documentation

Activity

Total releases
1
First release
Apr 2026
Latest release
16 hours ago
Release cadence
Stability
100% stable

Releases

Version Type Release date
1.0.0 Stable Apr 15, 2026