Building Your Online Shop: Step-by-Step Guide
A step-by-step guide from zero to your online shop taking its first order: set up company data and products, configure sales and payments, polish the look, complete the required store pages, test with a trial order, and share the shop with buyers.
Overview
- The online shop opens at your own
/shopaddress: the default subdomain, or your own domain through Shop Domain. Buyers can browse the catalog without logging in; login or sign-up is requested when ordering. - The shop uses the same data as the ERP: products, stock, customers, and payment gateways. Nothing is copied; buyer orders arrive as Sales Orders.
- All settings are on one screen: Sales & POS / Online Shop / Online Shop Settings, with three tabs: Readiness (a checklist), Sales & Stock, and Appearance & Info.
- The online shop is available in plans that include POS. The settings screen opens only for users who have the Online Shop Settings menu.
Before You Start
- You are signed in as a user allowed to manage the shop (admin).
- Product photos, a square logo, and banners of 1200 × 400 pixels are ready to upload.
- A merchant account with the online payment provider you will use (for Step 4).
- For automatic shipping fees: the shop uses the rupiah (IDR) and every product has its weight filled in (Step 7).
Step 1: Complete Company Information
- Open Sales & POS / Online Shop / Building Your Online Shop. Field details are in Company Information.
- Fill in the company name, address, phone, email, and logo, then save.
The shop uses this data as defaults: a logo, name, address, or email left empty in the shop settings follows the company data. The company phone becomes the shop WhatsApp number when the WhatsApp field is empty, and the company email is where “new order” emails are sent.
Step 2: Prepare Products
- Open Products & Inventory / Product Catalog / Product List (Products) and add or edit the products you will sell.
- Make sure every product meets the requirements in the table below, then save.
- Make sure there is stock at the shop location (the division and department you choose in Step 3). Stock comes in through goods receipts, purchases, or stock adjustments as usual.
| Product field | Why it matters |
|---|---|
| Active | Inactive products are not shown. |
| Available in POS & Online Shop | A product appears in the shop only when this box is ticked. |
| Base unit (quantity 1) with a selling price | The shop shows the price of the base unit. A product without a base unit is not shown. |
| Product Group | Used for category tabs. If you limit groups in Step 3, only products in those groups appear. |
| Photos and description | The first photo becomes the product card image; other photos and the description appear in the product detail. |
| Weight (grams) and dimensions (cm) | Required for automatic shipping fees (Step 7). |
| Variants (size, color, model) | Optional. Variants appear as one parent card with choices in the detail; manage them with the Manage Variants button on the product form. |
Service products are always shown. Physical products with no stock are hidden unless Show out-of-stock products is on (Step 5): they stay visible with an “Out of stock” label but cannot be ordered.
Step 3: Set Sales and Stock
- Open Sales & POS / Online Shop / Online Shop Settings, then the Sales & Stock tab.
- Fill in the stock location, default customer, and the other fields as described below.
- Press Save. These values are stored in the visitor role, the same as in the User Role List.
| Field | What it does |
|---|---|
| Division and Department | The shop stock location: displayed stock is calculated from here and order numbers use its division. Empty means the first division and its first department. The department must belong to the chosen division. |
| Product Group | Limit the product groups sold in the shop. Empty shows all groups. |
| Customer | The default customer: its price level is used for visitors and it is the template for new buyers (group, accounts, discount rules, and credit limit are copied). Create it first in the Customer form with the right group, receivable account, and price level. |
| Sales Representative and Service Staff | Recorded on orders from the shop. |
| Currency | Empty uses the company currency. Automatic shipping fees work for IDR only. |
| Shipment | The default shipment method for orders. |
Step 4: Set Up Payments
The shop offers only active payment methods whose type is Payment Gateway. Without one, buyers have no way to pay and the Readiness tab marks it red.
- Install the gateway. Open Settings / Business Setup / Payment Gateway, add a row for your provider, enter the credentials, test with sandbox credentials, then turn Active on. See Payment Gateway.
- Create the payment method. Open Settings / Business Setup / Payment Method List, add a method, set Type = Payment Gateway, then choose the Payment Gateway and Gateway Method. Fill in the payment, payment discount, and payment fee accounts. For an admin fee, fill in the Fee Formula (e.g.
2.5%+2500). See Payment Method List. - Repeat for every method you want to offer (e.g. QRIS, virtual account, card). The payment method name is what buyers see, and it is listed automatically on the shop Payment Methods page (Step 6).
- Make sure each payment method is Active.
Step 5: Set the Shop Appearance and Info
Open the Appearance & Info tab in Online Shop Settings. Empty fields use the company data; empty colors follow the app theme.
| Section | What to fill in |
|---|---|
| Store identity | Store logo (square), Store name, and Tagline. |
| Banners | Up to 5 images of 1200 × 400 pixels. With banners or featured products, the shop gets a Home tab that opens first. |
| Colors | Primary color and Secondary color. |
| Featured products | Up to 12 products, shown in the order you pick them. |
| Store info | Address, Google Maps link, Opening hours, Phone, WhatsApp number, Email, and Instagram. |
| Inventory | Show out-of-stock products and Show quantity sold (enables the Best sellers sort). |
- Google Maps link: open the store location in Google Maps, tap Share, copy the link, and paste it here. Only Google Maps links (
https) are accepted, e.g.maps.app.goo.gl/.... The button next to the field opens the link so you can check it. Even when left empty, the shop shows a View on Google Maps button built from the store address. - Phone and WhatsApp: when the numbers are the same (however they are written:
0812...,+62 812...), the shop shows only the WhatsApp row. - After saving, open the Store info icon (the i in the shop header) to see the result.
Step 6: Complete the Store Pages
Buyers and payment providers expect an online shop to have the basic pages: who the seller is, how to order, payment, shipping, returns, and the privacy policy. They are set in the Store pages section of the Appearance & Info tab, one panel per page.
| Page | Content | Where the content comes from |
|---|---|---|
| About Us | Business profile and contacts. | Your text |
| How to Order | Shopping steps from choosing a product to paying. | Your text |
| Payment Methods | The list of accepted payment methods. | Automatic from active Payment Gateway payment methods; an opening note from you is optional |
| Shipping | Courier services and shipping origin. | Automatic when Shipping fee is on (couriers are listed when you pick them); opening note optional |
| Returns and Refunds | Conditions, time limit, and how to request a return. | Your text |
| Privacy Policy | Data collected, purpose, third parties, and buyer rights. | Your text |
| Terms and Conditions | Rules for ordering, prices, payment, and governing law. | Your text |
- Open the panel of a page, e.g. Privacy Policy.
- Press Fill with template. The store name, address, phone, and email are filled in automatically. Templates exist in Indonesian and English (other languages use English). If the box already has text, you are asked to confirm before it is replaced.
- Read and adjust. Values in [square brackets], e.g.
[7]days for returns, are suggestions you must replace with your own policy; delete lines that do not apply. - Turn on Show this page in the store.
- Repeat for the other pages, then press Save.
- Templates are only examples and are never published by themselves. You are responsible for the content of your store pages; review them, and consult a legal adviser if needed.
- A page is published when it is on and has content. Payment and Shipping only need their automatic lists. A page that is off or empty does not appear.
- Text format: a blank line starts a new paragraph,
##makes a subheading,-a bullet, and1.a numbered list. HTML is not used. - Buyers open them from the Store info icon, in the Information section. Every page has its own address, e.g.
.../api/pg/<tenant code>/privacy, which opens without login and can be entered in a payment gateway registration form or in a Google/Facebook consent screen that asks for a privacy policy link. Page names:about,howtoorder,payment,shipping,returns,privacy,terms. - Published pages are also included in the shop sitemap for Google.
Step 7 (Optional): Automatic Shipping Fees
- Create the expense type in Sales & POS / Customers & Sales Team / Selling Expenses (e.g. “Shipping Fee”) with a shipping revenue account. See Selling Expenses.
- Fill in the Weight (grams) and dimensions on every product.
- On the Appearance & Info tab, in the Shipping fee section: turn on Calculate the shipping fee at checkout, and choose the Store shipping origin (sub-district) and the Sales expense type for shipping. Enabled couriers limits the courier choices; empty means all couriers.
- Save, then check the Shipping fee row on the Readiness tab.
How it works and how rates are calculated is in the Shipping Fees section of Online Shop.
Step 8 (Optional): Social Login
- On the Appearance & Info tab, in the Social Login section, press Configure.
- Enable Google and/or Facebook, enter the Client ID and Client Secret from the provider console, and register the callback address shown here in that console. Open this screen from your shop address (subdomain or own domain) so that the callback address is displayed.
- Facebook asks for a Privacy Policy URL before an app can go Live, and the Google consent screen has a privacy policy link field: use the address of the shop Privacy Policy page from Step 6.
Step 9 (Optional): SEO and Share Preview
The SEO & Share Preview section of the Appearance & Info tab controls how the shop looks in Google and in the preview card when the shop link is shared on WhatsApp, Facebook, or Instagram. Empty = taken from the store name, tagline, and logo.
| Field | Guidance |
|---|---|
| SEO title | About 60 characters so it is not cut off (70 at most). |
| SEO description | About 155 characters (200 at most). |
| Keywords | Separate with commas. Google does not use them for ranking. |
| Share preview image | 1200 × 630 pixels, JPG. Empty uses the first non-WebP banner, then the logo. |
| Shop icon (favicon) | A square image of at least 256 × 256 pixels, PNG. Empty uses the logo. |
| Google Search Console verification code | Paste the code, or the whole meta tag from Search Console. |
| Hide the shop from search engines | Adds noindex. The link can still be shared. Demo shops are not indexed. |
Search engines read the server-built shop pages: the front page, every product, every category (product group, 48 products per page), and the Store pages. The front page links to every category so all products can be found through links. All of them are in the shop sitemap.
Step 10: Check the Readiness Tab
Open the Readiness tab. A red mark means the shop cannot take orders yet; yellow means the shop works but something should be completed.
| Check | Type | How to fix it |
|---|---|---|
| Visitor role | Red | The shop’s default role is missing. Contact support. |
| Default customer | Red | Choose it on the Sales & Stock tab (Step 3). Without it buyers cannot register. |
| Stock location | Red | The division and department must exist, and the department must belong to the division. |
| Products ready to order | Red | Check stock at the shop location, tick Available in POS & Online Shop, and the Product Group (Step 2). |
| Online payment | Red | Create and activate a payment method of type Payment Gateway (Step 4). |
| Shop WhatsApp | Yellow | Fill in the WhatsApp number on Appearance & Info, or the company phone. |
| Order emails | Yellow | The email server is not set up (contact the server admin), or the company email is empty. |
| Shipping fee | Info / yellow | Off is fine. If on but yellow: complete the origin, expense type, and the IDR currency. |
Step 11: Test with a Trial Order
- Open the shop link in a private browser window (the link is in the Shop link section of the Appearance & Info tab).
- Sign up as a trial buyer: only a name, mobile number, and password.
- Add a product to the cart, open the Cart tab, enter the delivery address, pick a courier if shipping fees are on, and choose a payment method. Use the gateway sandbox credentials or a small amount.
- Press Send Order. The order appears in the buyer’s Transactions tab.
- In the ERP, open Sales Order: the order is there with a memo starting with
SHOP:. If SMTP is set up, a confirmation email goes to the buyer and a “new order” email to the company email. - Handle the trial order like any order (e.g. cancel or delete it from Sales Order) so it is not processed.
Step 12: Share the Shop
- Copy the Shop link from the Appearance & Info tab and share it on WhatsApp or Instagram. The Share button in a product detail shares a product page with its photo, price, and stock.
- Check the preview in WhatsApp. If it still shows an old image or title, that is a preview cached by WhatsApp/Facebook; try again a little later or refresh it with the Facebook Sharing Debugger.
- For Google, register the sitemap shown in the Shop link section in Search Console. The sitemap lists products, categories, and store pages; the verification code is entered in Step 9. Once the shop is live, open URL Inspection in Search Console for one product and one category, then request indexing; how fast Google indexes cannot be promised.
- Use your own address (e.g.
yourshop.com) through Shop Domain (Sales & POS / Online Shop / Shop Domain; cloud service only, in plans that include this feature). For a domain you already own: point the domain’s A record (and www) to the server IP address shown on that screen, then attach the domain there. Or buy a new domain from the same screen. The HTTPS certificate is issued automatically. Once attached, share links, the sitemap, and Store page addresses use the primary domain, so register the new sitemap in Search Console.
Step 13: Handling Orders Day to Day
- New orders arrive in Sales & POS / Orders & Fulfillment / Sales Order, with a
SHOP:memo. An order does not yet post stock, receivables, or journals. - Make sure the gateway payment is paid. A gateway payment that is not yet confirmed holds the order.
- Create a Delivery Order from the order. A delivery order posts the stock out. If the buyer chose a courier, the destination and service are already carried over for the waybill. See Delivery Order.
- Create the Sales invoice to record the receivable and the sales journal. Whether you ship first or invoice first follows your store’s routine; the guide is in Sales.
- Mark the delivery as received. The buyer sees placed, paid, shipped, and completed in the Transactions tab.
Common Problems
- The shop is empty or a product does not appear: see the Products ready to order row on Readiness. Check Active, Available in POS & Online Shop, the base unit, stock at the shop location (or turn on Show out-of-stock products), and the Product Group in the visitor role.
- Buyers cannot register: the Default customer is not set.
- No way to pay: no active Payment Gateway payment method, the gateway is not Active, or the amount is outside the method’s Minimum/Maximum Amount.
- Shipping fee does not appear: see the Shipping fee row on Readiness; the origin, expense type, and IDR currency must be complete, and product weights must be filled in.
- Order emails are not sent: the email server (SMTP) is not set up, or the company email is empty. The order is still saved.
- A store page does not show in Store info: the page must be on and have content (Payment needs an active payment method, Shipping needs shipping fees on). Reload the shop after saving.
- Google Maps link rejected: only Google Maps links starting with
httpsare accepted. Leave the field empty to get a button built from the address. - A product or category does not show in Google: make sure the shop is not hidden from search engines (Step 9), the sitemap is registered, and the product is really shown in the shop (an address not shown in the shop answers 404). Demo shops are never indexed.
- A change is not visible yet: reload the shop page. With a packaged app, new features (the Store pages editor, the map link) appear only after the app is updated to the latest version.
Menu Location
- Sales & POS / Online Shop / Building Your Online Shop
/shopsetup