Pumela
Documentation

Pumela Sofa Configurator

Everything you need to install, configure, and use the modular sofa builder on your WooCommerce store.

Installation

1

Download the plugin

Sign in to your dashboard and go to the Plugin page to download the latest pumela-configurator-x.x.x.zip file.

2

Upload to WordPress

In your WordPress admin:

  1. Go to Plugins → Add New → Upload Plugin
  2. Choose the downloaded .zip file
  3. Click Install Now, then Activate
3

Activate your license

After activation, a new Sofa Config menu appears in your WordPress sidebar.

  1. Go to Sofa Config → Dashboard
  2. Enter your license key
  3. Click Activate
Info: Your license key is available in your dashboard under Licenses. It connects your store to Pumela's cloud for module syncing, updates, and analytics.

Setting Up Products

1

Enable configurator on a product

Edit any WooCommerce product:

  1. Go to Products → Edit Product
  2. In the General tab, check Enable Sofa Configurator
  3. Optionally select which modules are available for this product
  4. Click Update

The configurator will automatically appear below the product summary on the single product page.

2

Manage modules

Modules (sofa pieces) are managed from your dashboard under Modules. Each module has a name, type (left-arm, right-arm, armless, corner, chaise), dimensions, price, and an optional thumbnail image.

You can also add local modules directly from your WordPress admin under Sofa Config → My Modules.

Using the Shortcode

1

Standalone configurator page

You can place the configurator on any page — not just the product page. Create a new page (e.g. “Configurator”) and add this shortcode:

[sofa_configurator]

This renders the full configurator with a product selector at the top. Customers can browse all configurator-enabled products, pick one, then build their sofa.

Tip: This is ideal for a dedicated “Build Your Sofa” landing page.
2

Locked to a specific product

To lock the configurator to a specific WooCommerce product (no product selector), pass the product_id attribute:

[sofa_configurator product_id="123"]

Replace 123 with the actual WooCommerce product ID. You can find the ID by editing the product — it appears in the URL:

wp-admin/post.php?post=123&action=edit
                              ^^^
3

Placement examples

Use CaseShortcode
Dedicated configurator page[sofa_configurator]
Locked to a specific product[sofa_configurator product_id="45"]
Inside product description[sofa_configurator]
Elementor / Gutenberg blockUse a Shortcode block and paste the shortcode

How It Works

1

Customer builds a sofa

Your customer drags sofa modules onto a 2D canvas to build their custom configuration. The configurator enforces compatibility rules — for example, a left-arm piece can connect to an armless piece but not to another left-arm.

2

Quick presets

The toolbar offers preset layouts like 2-Seater, 3-Seater, L-Shape, and Chaise Lounge for customers who want to start from a template.

3

Add to Cart

Once the customer is happy, they click Add to Cart. The configuration (modules, dimensions, total price) is saved as WooCommerce cart item metadata and flows through checkout into the order details.

Troubleshooting

Configurator doesn't appear

  • Make sure WooCommerce is activated
  • Check that Enable Sofa Configurator is checked on the product
  • Verify your license is active in Sofa Config → Dashboard

No modules showing

  • Ensure your license is active and connected
  • Check the Modules page in your dashboard — at least one module must exist
  • If using per-product module selection, make sure modules are selected

Shortcode shows but page is blank

  • Check browser console for JavaScript errors
  • Clear any caching plugins (WP Super Cache, LiteSpeed, etc.)
  • Verify the REST API is accessible: visit /wp-json/pumela/v1/modules

“Headers already sent” error

  • Make sure you're using the latest plugin version
  • Deactivate and re-activate the plugin
  • Check that no other plugin or theme is outputting content before headers

REST API Endpoints

The plugin registers these REST endpoints under /wp-json/pumela/v1/:

MethodEndpointDescription
GET/modulesList all available sofa modules
GET/productsList products with configurator enabled
POST/validateValidate a configuration layout
POST/priceServer-side price calculation