perfectdesign.

Ecommerce platforms

WooCommerce development

WooCommerce gives you a store you genuinely own, on hosting you choose, with no cut of every sale going to a platform. The trade is that everything it does not do for you becomes someone's job.

In short

WooCommerce is WordPress with a commerce layer on top. That makes it cheap to start, endlessly extendable and completely yours, and it makes updates, security, performance and plugin conflicts your responsibility. It is a strong choice when you want control and have someone to maintain it, and a poor one when nobody is going to.

Written for a business owner weighing woocommerce against a hosted platform or a custom build · 6 min read

What you are actually choosing

WooCommerce is a plugin that turns WordPress into a shop. Nothing is hosted for you, no percentage of your sales goes anywhere, and the database is yours. In exchange you take on the running of it: the server, the updates, the backups, the security and the pile of plugins that accumulate as requirements grow.

That trade suits some businesses very well. If you already run WordPress, publish content regularly, need unusual product logic, or simply want the option to change anything later, WooCommerce gives you room that a hosted platform does not. If you want to sell without thinking about infrastructure, it is the wrong tool and we will say so during scoping rather than after.

Online banking carries Malaysian checkouts. FPX is the rail Malaysian buyers reach for first. A store that hides it behind a card form is choosing the more expensive, less familiar option for its customers. A full text version follows.

Online banking carries Malaysian checkouts

Published statistic. FPX is the rail Malaysian buyers reach for first. A store that hides it behind a card form is choosing the more expensive, less familiar option for its customers.

Source: Bank Negara Malaysia: Payment Statistics, Table T3 Payment Systems. Reviewed .

Read the graphic as text
  • 2020: 367m.
  • 2021: 639m.
  • 2022: 646m.
  • 2023: 714m.
  • 2024: 826m.
  • 2025: 956m. RM465 billion

Chart scale: FPX transactions per year, in millions.

Download this infographic (SVG)

The running cost nobody quotes

The plugin is free, which is where most comparisons stop and most budgets go wrong. A WooCommerce store has a real monthly cost, it is simply spread across things that do not arrive as one invoice.

Where a WooCommerce store actually costs money
ItemWhy it existsWho usually owns it
HostingA busy store needs more than shared hosting; checkout is the first thing to fall over under loadYou, or us under a care plan
Premium extensionsSubscriptions, bookings, advanced shipping and B2B pricing are paid add-ons, renewed yearlyYou, and the renewals are easy to lose track of
UpdatesWordPress, WooCommerce, the theme and every plugin update on their own schedules and occasionally conflictWhoever maintains the site
SecurityA public login and a large plugin surface make it a target; patching is not optionalWhoever maintains the site
Backups and restoresA backup nobody has restored is a hope, not a backupWhoever maintains the site
Performance workPlugins add queries and scripts; speed degrades gradually rather than suddenlyRevisited periodically
Free plugin, owned responsibilities. Nothing here is optional, so the only question is who is accountable for each. A full text version follows.

Free plugin, owned responsibilities

Editorial framework. Nothing here is optional, so the only question is who is accountable for each.

Basis: WooCommerce: Updating WooCommerce. Reviewed .

Read the graphic as text

Your store

  • Hosting. Sized for checkout under load
  • Updates. Core, theme and every plugin
  • Security. A public login and a large surface
  • Backups. Restores rehearsed, not assumed
Download this infographic (SVG)

Plugin decisions that age well

Most WooCommerce stores that become painful got there one plugin at a time. Each was installed to solve something real, and together they built a site nobody can update safely. The way out is to treat plugin choice as an architectural decision, not a shopping trip.

  • Prefer fewer, better-maintained plugins. Check the last update date and how the developer handles WordPress releases, not the star rating.
  • Build small custom pieces rather than installing a large plugin for one feature. Two hundred lines you own beat a suite you do not.
  • Never take a plugin that rewrites checkout unless it has to. Checkout is where money is lost and where conflicts hurt most.
  • Record why each plugin is there. A list nobody can explain is a list nobody dares remove.

Selling to Malaysian customers

A Malaysian store has specifics that generic WooCommerce guidance skips. Buyers expect online banking and QR alongside cards rather than behind them, so the payment step should present the methods people actually use first. Delivery needs real states and postcodes, and shipping rules that reflect how couriers price peninsular versus East Malaysia.

Gateway choice matters more than it looks, because the fees differ meaningfully by method and the settlement periods differ too. Our e-commerce hub sets out what each Malaysian gateway publishes, with the dates we read them. Whichever you choose, the store should record what was actually charged on the order rather than recalculating it later.

What a card payment costs, as published. The headline rate is half the decision. Settlement speed, the online banking fee and what a plan upgrade costs decide what you actually keep. A full text version follows.

What a card payment costs, as published

Published statistic. The headline rate is half the decision. Settlement speed, the online banking fee and what a plan upgrade costs decide what you actually keep.

Source: toyyibPay pricing plans. Reviewed .

Also: Billplz pricing.

Also: Curlec by Razorpay pricing.

Also: Stripe Malaysia pricing.

Read the graphic as text
  • toyyibPay: 1.50%. Cards carry a RM100 onboarding fee
  • Billplz: 1.80%. 1.5% on the paid plan
  • Curlec: 2.40%. 2.00% on the premium plan
  • Stripe: 3.00%. Plus RM1.00 per transaction

Chart scale: Domestic card rate on the entry-level plan, read from each gateway on 18 September 2026.

Download this infographic (SVG)

The technical decisions that decide whether it holds up

A WooCommerce store that stays fast and stable under real traffic tends to have made the same handful of decisions early. None of them are visible on the storefront, which is why they get skipped.

Caching has to understand the cart. Aggressive page caching is what makes WordPress fast, and it is also what shows one customer another customer's basket if it is configured carelessly. Cart, checkout and account pages are excluded, the rest is cached hard, and the exclusions are tested rather than assumed.

Product search is not the same as WordPress search. The default search looks at posts, not at variants, attributes or stock state, and it degrades badly as a catalogue grows. Anything beyond a small catalogue needs search built for products, with filters that reflect how people actually narrow down.

Stock has one source of truth. The moment stock also lives in a spreadsheet, a POS or an accounting system, you need to decide which one wins and what happens when they disagree. Deciding that after launch means reconciling it by hand for months.

The admin is a workplace. Your team will spend more hours in the order screens than any customer spends in the shop. Order lists that show the states your operation actually uses, and bulk actions for the jobs done daily, are worth more than a redesigned product page.

Cache everything except the pages that are personal. Aggressive caching is what makes WooCommerce fast and what leaks a basket when it is careless. A full text version follows.

Cache everything except the pages that are personal

Editorial framework. Aggressive caching is what makes WooCommerce fast and what leaks a basket when it is careless.

Basis: WooCommerce: Configuring caching. Reviewed .

Read the graphic as text
  • Cache hard. Home, category and product pages
  • Never cache. Cart, checkout and account
  • Test it. A second browser must not see the first basket
Download this infographic (SVG)

Selling business to business

A large share of Malaysian WooCommerce projects are not consumer shops at all. They are trade counters: account-specific pricing, credit terms, minimum order quantities, and customers who reorder the same twenty items rather than browsing.

WooCommerce handles that through extensions and custom logic, and it is worth being clear which parts are which. Customer groups and tiered pricing are well-trodden. Credit limits, approval chains and account statements usually are not, and are better built than bought. If the trade side is the whole business rather than a sideline, that is a portal with a shop attached, and worth scoping as one.

The cheque is finishing. Under one cheque per person per year, and falling by a fifth annually. Any process that still assumes a cheque in the post is quietly adding a week to getting paid. A full text version follows.

The cheque is finishing

Published statistic. Under one cheque per person per year, and falling by a fifth annually. Any process that still assumes a cheque in the post is quietly adding a week to getting paid.

Source: Bank Negara Malaysia: Annual Report 2025 and Payment Statistics T1. Reviewed .

Read the graphic as text
  • 2020: 1.84.
  • 2021: 1.48.
  • 2022: 1.41.
  • 2023: 1.22.
  • 2024: 1.17.
  • 2025: 0.92. 31.4m total

Chart scale: Cheques issued per Malaysian, per year.

Download this infographic (SVG)

Where WooCommerce runs out of road

There is a point where extending WooCommerce costs more than replacing it. The signs are consistent: a checkout bent so far out of shape that every update is frightening, product logic that no longer fits a products-and-variants model, a plugin stack where two extensions disagree about the same data, or a catalogue large enough that queries are the bottleneck.

At that point a custom build is usually cheaper over a two-year horizon, and we will tell you when we think you are there. Equally, plenty of stores are told they need a rebuild when they need a tidy-up, a faster host and six plugins removed. We audit before recommending either.

How we build it

We start from the order record and work backwards, the same way we approach any store. What a complete order must contain, what the customer is promised at the moment they pay, and what your team needs to fulfil it. Then the catalogue, the checkout and the admin views are built to produce that reliably, with a staging environment so changes are tested before they touch real orders.

Content stays editable by your team, which is WordPress's genuine strength, while the structural parts stay protected so an edit cannot break a layout. If you would rather not own the maintenance, it goes under a care plan and we run it.

Before you commit to a platform

Bring your catalogue size, how your products vary, the systems the store must talk to, and who will maintain it. That is enough for us to say whether WooCommerce, a hosted platform or a custom build fits, and to be specific about what each would cost you to run rather than to buy.

What you get

What is actually delivered

01

Platform recommendation first

An honest read on whether WooCommerce is right for your catalogue, volume and team, before anyone builds anything.

02

Store build on your hosting

Catalogue, variants, cart and checkout on infrastructure you own, sized for the traffic you actually expect.

03

Malaysian payment and delivery

Online banking, QR and cards presented as equals, with real states, postcodes and courier-shaped shipping rules.

04

A deliberate plugin stack

Chosen for maintenance, documented so a future developer knows why each one is there, with custom code where it is smaller than an extension.

05

Staging environment

A copy of the store where updates and changes are tested before they reach live orders.

06

Editable content

Your team edits what it needs to edit. See how we handle client-editable content.

07

Backups with a tested restore

Scheduled backups, and at least one restore actually performed so you know the process works.

08

Handover or care

Accounts and code handed to you, or kept running under a care plan. Both are fine; drifting between them is not.

How it runs

Decide the platform, then build once

The expensive mistake in ecommerce is committing to a platform before understanding the catalogue and the operation behind it.

  1. 01

    Catalogue and operation

    What you sell, how it varies, how orders get fulfilled, and which systems have to know about them.

  2. 02

    Platform call

    WooCommerce, hosted or custom, argued with your numbers rather than our preference.

  3. 03

    Prototype the journey

    A working version of the buying path on a real link, so the decisions are judged from the thing itself.

  4. 04

    Build and connect

    Store, payment, delivery and the integrations whose access and terms are confirmed.

  5. 05

    Test and hand over

    Checkout tested including the unhappy paths, a restore rehearsed, then accounts and code to you.

How we work

The parts people ask about before they commit

How we build

React first, other languages when a project needs them

We build in React by preference, on both web and mobile, and we work in other languages when a project genuinely calls for it.

Platform choice

Shopify, WooCommerce or a custom build

We build on Shopify and WooCommerce, and we build custom stores. All three are real options and the right one depends on what you sell and how you operate. Custom is not automatically right. A small catalogue with ordinary needs often ships faster and cheaper on Shopify or WooCommerce, and we will say so.

Timeline

Project dependent, and often quicker than expected

Timelines are project dependent. A focused build can go live in about a week, while a larger platform takes longer once scope is agreed.

Ongoing care

Quoted with the project, not bolted on

For a more complex website or a system with a real backend, ongoing care starts from RM 250 a month, with the plan confirmed against what was actually launched. Care is quoted with the project, not bolted on afterwards.

Getting hold of us

Normally under one working day

We normally respond to a support request in under one working day, and we work to solve problems as fast as we can. That is how we normally work rather than a contractual guarantee, and responding is not the same as resolving. If your operation needs a formal response or resolution commitment, we can write one into your scope.

Ownership

Everything belongs to your business

You own everything we build for you: the code, the content, the domain, the hosting account and every third-party account opened for the project. There is no lock-in. If you move to another provider, everything goes with you and we help with the handover.

  • Source code, handed over in your own repository
  • Domain and DNS, registered to your business
  • Hosting and every service account, in your name
  • Analytics, search and ad accounts, with us as a manager you can remove
  • All content, media and data in the system

Questions

Asked about woocommerce

Straight answers to what people ask before they commit. Anything else, message us.

Is WooCommerce cheaper than Shopify?

To buy, usually. To run, it depends on volume. WooCommerce has no per-sale platform cut, which matters more as you grow, but it does have hosting, extensions and maintenance that a hosted platform absorbs. We work it out with your numbers during scoping instead of quoting a rule of thumb.

Can you move our existing WooCommerce store?

Yes. Migrations are mostly about the data and the URLs: products, variants, customers and order history moved without loss, and old addresses redirected so existing search visibility and bookmarks survive. We inventory both sides before anything moves.

Who handles updates after launch?

Whoever you decide, and it should be decided before launch. If it is us, it sits under a care plan with a staging copy for testing. If it is your team, we hand over the process and the staging environment. What does not work is nobody.

Will it be fast?

WooCommerce can be fast and often is not, usually because of hosting and plugin weight rather than the platform. We size hosting for real traffic, keep the plugin stack deliberate, and measure. We will not promise a score, because it depends on choices made after launch as much as before.

Can we take payments in ringgit with local methods?

Yes, through a Malaysian gateway that supports online banking, QR and cards. The e-commerce hub lists what each gateway publishes so the choice is made on fees and settlement rather than on whichever one a plugin happened to support.

What happens if we outgrow it?

The data is yours and portable, which is one of the better arguments for WooCommerce. When extending it starts costing more than replacing it, we will say so, and the migration path is real rather than theoretical because you own the database.

Where to go next

Tell us what you need built

We will show you the closest thing we have already built, then scope the real version against your requirements.