perfectdesign.

Commerce platforms

Shopify design and development

Shopify takes the hosting, the patching and the payment plumbing off your hands, and charges for it. This page is about scoping a Shopify store with those trade-offs in plain sight.

In short

Shopify is a good answer for a store with an ordinary catalogue, an ordinary checkout and nobody in-house to run infrastructure. Before a theme is chosen, the project still has to settle the customer journey, who keeps the catalogue and content accurate, what the checkout and payment arrangements must do, which other systems exchange data with the store, what gets proved before launch and who holds the accounts afterwards. Settle those and the implementation is largely configuration. Leave them open and you end up buying apps to cover decisions nobody made.

Written for a malaysian business owner or e-commerce lead deciding whether to commission a shopify store, and what to check in a partner · 7 min read

Shopify development starts with the store you have to operate

Shopify is a hosted platform: the software, the servers, the security patching and the payment plumbing are its responsibility rather than yours, and you pay for that in a subscription and in fees. What it does not do is make the rest of the decisions for you. A Shopify project still has to settle six things before anyone opens a theme: the customer journey from first product view to delivery message; who owns the catalogue and the content; what the checkout and payment arrangements have to do; which other systems the store exchanges data with; what gets proved before launch; and who holds every account afterwards. Those six are the scope. The theme is a consequence of them.

We build on Shopify, on WooCommerce and as custom stores, and when the decision is genuinely open we lean towards custom for the reasons set out on the e-commerce hub. That is a preference rather than a rule, and plenty of businesses are better served by Shopify than by anything we would write from scratch. We build on Shopify when it genuinely suits the business, and we will tell you when it does. Before committing to any partner, on Shopify or anywhere else, ask to see a live store and speak to the merchant running it.

One picture decides how fast it feels. On three pages in four, optimising the hero image is not a detail. It is the performance work. A full text version follows.

One picture decides how fast it feels

Published statistic. On three pages in four, optimising the hero image is not a detail. It is the performance work.

Source: HTTP Archive: Web Almanac 2025, Performance (CrUX, July 2025). Reviewed .

Read the graphic as text

Mobile

  • An image: 76%. The largest thing painted on screen is a picture, so its file size is the loading score
  • Text: 24%. On desktop it is rarer still: 85.3% of pages paint an image last
Download this infographic (SVG)

Which requirements need custom work

Shopify work separates into five layers, and knowing which layer a requirement lands in is most of the estimate. Shopify's theme documentation describes the structure behind that distinction: a theme is built from layouts, templates, sections, blocks, snippets and configuration files, and JSON templates act only as a wrapper for sections. Sections and blocks are the parts a merchant can add, remove and reorder; snippets stay invisible in the theme editor.

  • Theme settings. Colours, typography, section order and content you change yourself in the theme editor.
  • Theme code. Liquid templates, sections and snippets, edited when the storefront needs a layout the chosen theme cannot express.
  • Catalogue and content. Products, variants, prices, stock, media and the metadata filtering depends on. Usually the longest task.
  • Checkout and payments. A constrained surface with defined extension points rather than a page you rewrite.
  • Exceptional requirements. Work needing an app, a custom extension, an integration with a system you already run, or a different platform.

The working order is: configure first, then code the theme, then consider an app, then consider building one, and only then reconsider the platform. Configuration carries no future maintenance, theme code is yours to maintain through theme updates, and an app is a monthly cost plus a dependency on somebody else's roadmap. A custom app fits a requirement no subscription covers. And if the requirement is the checkout itself, or a data model Shopify does not hold, that is where a custom build stops being an indulgence and becomes the cheaper option.

One decision inside that structure matters more than it looks: what your team will edit after launch. Content in sections and blocks can be rearranged by whoever runs the store, while content fixed inside a snippet needs a developer. Deciding that page by page separates a store your marketing person can run from one that generates a support request every time a promotion changes, and we approach client-editable content the same way on every platform.

What the platform gives, and where work starts. Knowing which of the four a requirement falls into is most of the estimate. A full text version follows.

What the platform gives, and where work starts

Editorial framework. Knowing which of the four a requirement falls into is most of the estimate.

Basis: Shopify: Checkout extensibility. Reviewed .

Read the graphic as text
  • Built in. Catalogue, cart, checkout, payments
  • Theme work. Layout, content and merchandising
  • App or custom. Subscriptions, B2B pricing, unusual logic
  • Not available. Checkout changes the platform reserves
Download this infographic (SVG)

Catalogue, checkout and the surfaces you cannot restyle

Checkout is the least negotiable surface on Shopify, and that is the most useful thing to understand before you commit. Shopify's developer documentation states that apps extend checkout using extensions, and lists four kinds: UI extensions, Functions, web pixel extensions and payments extensions. It calls them upgrade-safe, meaning they keep working as Shopify ships new checkout features. The older route of editing checkout.liquid is being phased out, and the same page records script tags on the thank-you and order-status pages being sunset on 28 August 2025 for Plus stores and 26 August 2026 for everyone else.

Read practically, that means you can add to the checkout at defined points and change how it calculates things, but you cannot redesign it as a page. If your buying journey needs a step the checkout does not have, that is a scope decision to take before the build, and it is the most common honest reason to recommend a custom store instead. Everything before the checkout, the catalogue, the product page, the cart and the way people narrow a large range, is where a Shopify build earns its keep. Structure the product data first, because catalogue and search behaviour follows the data rather than the theme.

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)

Apps, fees and what the store costs to run each month

A Shopify store has four running costs: the subscription, the apps, the per-sale fees and ongoing care. The app layer is the one that creeps. Shopify's billing documentation records that app developers set their own charges, that these arrive as recurring fees, usage fees and one-time fees on your Shopify bill, and that billing questions about an app go to its developer rather than to Shopify. The practical defence is a register: every app, what it does, what it costs a month, and what breaks if it is removed. Review it at renewal, not at year three when six subscriptions are quietly restoring features you no longer use.

Payment fees deserve the same clarity. Shopify's billing documentation states that third-party transaction fees are charged when you use a third-party payment provider to accept customer payments, that those fees are in addition to the processing fees your provider charges, and that the rate varies depending on your pricing plan. It publishes the mechanism rather than a percentage, so check the rate for your plan. It also records that Shopify Plus stores using Shopify Payments as their sole payment provider have those fees waived, and Shopify's page on third-party payment providers adds that they otherwise apply on all third-party and alternate gateways even when Shopify Payments is activated, with PayPal and manual payments excluded in that case.

For a Malaysian store that matters, because FPX and DuitNow QR normally arrive through a local gateway. Confirm with Shopify what is available to your business here, then model the gateway fee and the Shopify fee together rather than one or the other. What four Malaysian gateways publish is tabulated on the e-commerce hub.

The monthly bill is more than the subscription. Compare the total against a custom build annually, not the headline plan price. A full text version follows.

The monthly bill is more than the subscription

Editorial framework. Compare the total against a custom build annually, not the headline plan price.

Basis: Shopify: Transaction fees. Reviewed .

Read the graphic as text

Monthly cost

  • Subscription. The plan you signed up for
  • Transaction fees. Charged when not using the platform gateway
  • Apps. Each one recurring, and they accumulate
  • Theme and support. Paid work that returns periodically
Download this infographic (SVG)

Worked example: verifying a small theme-based store

The table below is a fictional teaching example: a small retailer selling physical products with variants on a configured theme. The actors and policies are assumed and would have to be agreed for your project. The right-hand column lists evidence to collect during testing, never results already achieved.

An assumed small retailer verifying a theme-based Shopify store
Workflow stepAssumed actorProposed system responseExceptionAcceptance evidence to collect
Choose a variantCustomerShow the selected product details and the purchase options actually availableAn unavailable or mismatched variant prevents the proposed orderVariant and catalogue test observations, including a deliberately out-of-stock option
Place a test orderStore operatorExercise the agreed theme, checkout and payment configuration togetherA checkout customisation the platform does not support becomes a scoped decision, not a promiseTest-mode order records and a written note of the configuration chosen
Hand off fulfilmentOperations ownerReconcile the order against the agreed inventory or fulfilment sourceDuplicate or missing integration messages enter a reconciliation queueMapped identifiers, replay observations and the recorded ownership decision
The payment finishes in a banking app. Paying by FPX or DuitNow means leaving your site for a banking app and coming back. If that return journey is untested on a phone, that is where the order is lost. A full text version follows.

The payment finishes in a banking app

Published statistic. Paying by FPX or DuitNow means leaving your site for a banking app and coming back. If that return journey is untested on a phone, that is where the order is lost.

Source: Bank Negara Malaysia: Annual Report 2025, payments chapter. Reviewed .

Read the graphic as text

Online banking

  • Mobile banking: 64%. 25 million active users, growing 8.7% in 2025
  • Internet banking: 36%. 21 million users, and falling
Download this infographic (SVG)

What to verify before choosing an implementation partner

Most of the risk in a Shopify engagement is commercial rather than technical, so ask about ownership and continuity.

  • Whose name is on the Shopify account, the domain and the payment provider account. It should be your business from day one.
  • Whether the theme code is handed to you, and where it lives if the relationship ends.
  • Which apps are proposed, what each costs a month, and which exist to cover a gap the build could close instead.
  • How the catalogue is migrated and who checks the imported data before launch.
  • Who is responsible after launch for theme updates, app changes and the checks in the table above.

Our position on ownership is fixed: everything belongs to your business, the accounts are opened in your name, and if you move to another provider it all goes with you. On evidence, we would rather say plainly that we have no Shopify store published yet than show an unrelated project and let you assume. To work through whether Shopify or a custom build fits what you sell, tell us about the store and you will get a straight recommendation, including the case where you do not need us.

What you get

What is actually delivered

01

Scope and route recommendation

A written read on whether Shopify is the right route for what you sell, with the reasons and the running costs of each option, given before anything is built.

02

Catalogue and variant preparation

Products, variants, per-variant price and stock, media and the metadata filtering depends on, structured and validated before import rather than after.

03

Theme selection and configuration

A theme chosen against your actual page needs and configured through settings first, so the parts your team edits stay editable without a developer.

04

Theme code where it earns its place

Template, section and snippet work only where the storefront genuinely needs a layout the theme cannot express, documented so the next person can maintain it.

05

Checkout and payment configuration

The checkout set up against the extension points the platform supports, with your chosen gateway connected and the fee position written down rather than assumed.

06

An app register with real numbers

Every app proposed, what it does, its monthly cost, its owner and what breaks without it, so the running cost is visible before launch.

07

Launch checks on the unhappy paths

Out-of-stock variants, failed and delayed payments, duplicate confirmations and fulfilment handoffs exercised as tests, with the observations recorded.

08

Accounts and handover in your name

Shopify account, domain, payment provider and every service account held by your business, with the theme code and catalogue data handed over.

How it runs

Decide the store, then configure it

A Shopify build goes wrong when the theme is chosen before the journey, the catalogue and the checkout constraints are understood. We take those in the other order.

  1. 01

    Scope and route check

    We work through what you sell, how the catalogue is really structured and who runs the store, then say whether Shopify, WooCommerce or a custom build is the honest answer.

  2. 02

    Catalogue and content

    Products, variants, prices, stock and media are prepared and validated first, because that work sets the schedule far more often than the build does.

  3. 03

    Theme build and configuration

    The theme is configured through settings, with code added only where a page genuinely needs it and the editable parts kept editable by your team.

  4. 04

    Checkout, payments and apps

    The checkout is set up within the platform extension points, the gateway is connected, and every proposed app is justified against its monthly cost.

  5. 05

    Test, launch and hand over

    Test orders and the failure paths are exercised and recorded, then the accounts, the theme code and the catalogue data are handed to your business.

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 shopify

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

Can we see a Shopify store you have built?

Not yet, and we would rather say so first than have you find out later. We have no published Shopify store of our own to show. Our published work is custom websites, business systems and concept prototypes, which evidences the catalogue, order and admin thinking behind a store rather than a Shopify implementation. Ask any partner you are comparing us with for a live store URL and speak to the merchant.

What does a Shopify store cost?

The build is quoted against scope, and our packages are published openly on the pricing page, with the e-commerce package starting from RM 5,999. Separately from the build, budget for the Shopify subscription, any app subscriptions, the per-sale fees on your volume and ongoing care. We put those in front of you before you commit rather than after.

Do we have to use Shopify Payments?

No, and the fee position is worth understanding first. Shopify documents that third-party transaction fees are charged when you use a third-party payment provider, that they are in addition to the processing fees your provider charges, and that the rate varies by plan. Its third-party providers page adds that these fees apply on all third-party and alternate gateways even when Shopify Payments is activated, with PayPal and manual payments excluded in that case. Check what is available to your business in your country and model both fees together.

How much of the checkout can we change?

You can extend it at defined points rather than redesign it. Shopify documents that apps extend checkout through UI extensions, Functions, web pixel extensions and payments extensions, and that the older checkout.liquid route is being phased out. If your buying journey needs a step the checkout does not support, that is a decision to take before the build, and it is the most common honest reason we would suggest a custom store instead.

Shopify or a custom build?

We build both, and we lean towards custom when the decision is genuinely open, because the checkout follows your buying journey, the data sits in your own database and no platform takes a share of each sale. A small catalogue with ordinary needs often ships faster and cheaper on Shopify, and we will tell you when that is your situation instead of billing you for a platform you did not need.

Can you move our products from another platform into Shopify?

Yes, and it is usually the first task rather than the last. Catalogues arrive from spreadsheets, WordPress and older systems and almost always need normalising before import. You review the imported data against your own source before launch, so old inconsistencies do not travel across with it.

Who owns the store and the accounts afterwards?

You do, completely. The Shopify account, the domain, the payment provider account and every service account are in your business name, and the theme code and catalogue data are handed over. There is no lock-in, and if you move to another provider we help with the handover.

Where to go next

Sources

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.