Version: 1.1
Last updated: 2026-07-01
EasyParcel for EasyStore is a logistics app that lives inside your EasyStore admin panel. It connects your EasyStore shop to EasyParcel, so you can:
Everything happens inside your EasyStore admin — no switching between apps.
Shipping from more than one region? The app supports multiple regions in a single install. Each region has its own EasyParcel account, sender details, and pickup location — for example one for Malaysia and one for Singapore. If you only ship from one country you can ignore the multi-region features; the app works exactly the same with a single region. See 4.0 Managing Your Regions.
Before installing the app you need an EasyParcel Integration ID (API key). This key links the app to your EasyParcel account so it can fetch shipping rates and book parcels on your behalf.
One Integration ID per region. If you ship from more than one country, you will generate a separate Integration ID for each EasyParcel account and add one region per account in the app (see Section 4).
If you already have an Integration ID, skip to Section 3 — Install the App.
Don’t have an EasyParcel account yet? Sign up here first, then follow the steps below.
Go to www.easyparcel.com and log in to your account.
From the dashboard, navigate to Integration and select it. Then click Add Ecommerce App, find EasyStore in the list, and click Install App.
Fill in your store’s name and web address (URL), then click Add.
EasyParcel generates a unique Integration ID (API key) for your store. Copy this key — you will paste it into the EasyParcel for EasyStore app in the next section.
Keep this key safe. It gives access to your EasyParcel account. Do not share it publicly.
Click here to go directly to the EasyParcel Malaysia app page on EasyStore, then click Install this app.
EasyStore will show a permission screen listing what the app needs access to (orders, fulfillments, shipping, locations). Click Install to authorize.
After authorization, EasyStore opens the EasyParcel app on its Settings page. Complete all sections — Integration ID, sender details, and pickup location — for each region you ship from before the app is ready to use.
The Settings page is your control centre. Access it any time from your EasyStore admin → Apps → EasyParcel Malaysia.
Your settings are organised into regions. Each region is a separate EasyParcel account with its own Integration ID, sender details, pickup location, rate options, and fees — for example a Malaysia region and a Singapore region. If you ship from a single country you’ll simply have one region, and everything below still applies.
Regions appear as cards at the top of the Settings page:
How the app picks a region for an order: at checkout the app matches the customer’s destination/origin to the right region automatically; when you fulfill, it matches the order’s pickup location, then falls back to your default region. You can always override this with the Ship from selector on the fulfillment page (see Section 5).
Your EasyParcel Integration ID is the API key that allows this app to communicate with your EasyParcel account. Without it, no shipping rates will appear at checkout and you cannot fulfill orders. Each region has its own Integration ID.
How to find your Integration ID:
Follow the steps in Section 2 — Before You Begin to generate your Integration ID from EasyParcel’s Integration dashboard.
To enter it in the app:
Error: “Invalid integration ID. Please double check.”
Your Integration ID did not pass verification. Check that you copied it completely and that your EasyParcel account is active.
If EasyParcel can’t be reached at the moment you Save, the app still saves your other settings and shows: “Settings saved — but could not verify Integration ID against EasyParcel right now.” Re-check the balance badge later.
This information appears on your Air Waybills as the sender/return address. Sender details are set per region.
| Field | Description | Required |
|---|---|---|
| First Name | Your name or company contact’s first name | Yes |
| Last Name | Last name | No |
| Mobile Phone | Malaysian format: 01X-XXXXXXXX | Yes |
| Sender/return email | No | |
| Company Name | Optional — appears on the AWB | No |
Tip: When you select a pickup location, the app pre-fills the Mobile Phone and Email from that location if you’ve left them blank. You can override them.
This section links your EasyStore Location as the parcel pickup address. EasyParcel will collect parcels from this address. The pickup location is set per region.
To set your pickup location:
Important: If no location is selected, your customers will not see shipping rates at checkout and the fulfillment page will show a configuration error. If the dropdown is empty, add a location in EasyStore admin → Settings → Locations and click Reload.
This section controls which shipping rate options appear at your store’s checkout.
The master toggle that turns EasyParcel shipping rates on or off.
| State | What customers see at checkout |
|---|---|
| ON | Live rates from EasyParcel (Pos Laju, J&T, DHL, etc.) |
| OFF | No EasyParcel rates — checkout shows “No shipping options” (or other shipping methods you have set up) |
Only visible when Enable EasyParcel Rate is ON.
When EasyParcel rates are enabled, select your preferred courier from the dropdown. The list is populated with the couriers available for the region’s country. This sets the default pre-selected courier on the fulfillment page.
Tick any couriers you don’t want shown to customers at checkout. Excluded couriers are hidden from the rate list for that region.
Turn this on if you ship outside the region’s home country. When enabled, EasyParcel will show international shipping rates to customers with delivery addresses in other countries.
You can add a handling fee on top of EasyParcel’s rates and/or offer free shipping above a certain order value. These settings are applied separately for General items and Fragile items, and are set per region.
Applied to all standard (non-fragile) products.
| Field | Description | Example |
|---|---|---|
| Handling Fee | Fixed fee added to every rate | RM 2.00 |
| Percentage | Percentage adjustment applied to the base EasyParcel rate (not the handling fee). Positive marks up; a negative value discounts. | 10% |
| Free Shipping Above | Order subtotal threshold for free shipping (0 = disabled) | RM 150.00 |
Calculation example:
EasyParcel rate: RM 8.50
- Handling Fee RM 2.00 → RM 10.50
- 10% of the RM 8.50 rate (RM 0.85) → RM 11.35
Customer sees: RM 11.35
If the cart subtotal is RM 150.00 or above (and your free-shipping threshold is RM 150.00):
Customer sees: RM 0.00
Same three fields, applied when any product in the cart is tagged as Fragile in EasyStore. Expand this section by clicking the Fragile heading.
A fallback rate is shown to customers when EasyParcel’s API is temporarily unavailable or returns no results. This prevents your checkout from showing “No shipping options available.” Fallback rates are set per region.
Shown for domestic orders when EasyParcel returns no rates.
| Field | Description |
|---|---|
| Enable Local Fallback toggle | Turn on/off |
| Fee | The flat rate shown to the customer |
| Shipping Name | Displayed as the shipping option name (e.g. “Standard Delivery”) |
| Short Description | Subtitle shown under the name (e.g. “3–5 business days”) |
Same fields, applied when the customer’s delivery address is outside the region’s home country.
Sets what the app puts in the parcel content field when booking with EasyParcel. This is per region and can be overridden per shipment on the fulfillment page.
Click the Save button at the bottom of the page. The app will:
When an order is ready to ship, you fulfill it directly from EasyStore without leaving your admin panel.
EasyStore opens the EasyParcel fulfillment page inside your admin.
The top of the page shows a read-only summary pulled from EasyStore:
Ship from (multi-region stores only): if you have more than one region, a Ship from selector appears. The app pre-selects the region that matches the order’s pickup location (falling back to your default region). Use the selector to change which EasyParcel account/region ships this order.
| Field | Description |
|---|---|
| Pickup Date | Date you want EasyParcel to collect the parcel. Defaults to the next day. |
| Delivery Option | Pickup (EasyParcel collects from you) or Drop off (you deliver to a collection point) |
| Drop-off Point | Only shown when “Drop off” is selected. Choose a nearby collection point. |
| Use custom weight & dimension | Toggle on to override with your actual measured weight (kg) and dimensions. Minimum weight 0.01 kg. |
| Dimensions | Length × Width × Height in cm. Pre-filled from product data if available; editable when custom weight is on. |
| Declared Value | The declared value of the parcel. Defaults to the order subtotal. |
| Parcel content | Choose SKU or Product name for the parcel content. Pre-selected from your Default Parcel Content setting. In bulk fulfillment this choice applies to all orders in the batch. |
| Parcel Category | Select the category that best describes your product (e.g. Documents, Electronics, Apparel), from the categories offered by EasyParcel for that region. |
| HS Code | Shown for international orders only. Required for customs clearance. |
| SMS Notification | Toggle on to send the recipient an SMS. |
The app queries EasyParcel and displays available courier options with prices and estimated delivery times.
Each rate shows:
Select the rate you want by clicking the radio button next to it. The app pre-selects a sensible default (your saved default courier, or the option the customer chose at checkout, or the cheapest available).
Click [Fulfill now]. In a single step the app will:
Insufficient balance?
If your EasyParcel credit balance is too low, the booking fails at the payment step and the completion screen reports “Payment failed — insufficient credit.” (in bulk fulfillment, the affected order is listed under Failed). Top up your balance on the EasyParcel dashboard, then try again.
After a successful fulfillment, the success screen shows:
The EasyStore order timeline is automatically updated with the tracking number and courier details.
Bulk fulfillment works the same as single order fulfillment (see Section 5), with a few differences in how you start it and review the result.
EasyStore opens the bulk fulfillment page inside your admin.
Instead of a single order summary, the page header shows the total number of orders being fulfilled and lists all order numbers (e.g. #1001, #1002, #1003). The parcel details, rate quote, and confirm steps are the same as single fulfillment — the settings you enter apply to all orders in the batch.
Multi-region note (bulk only): if your selected orders belong to more than one region, a banner appears: “Orders span multiple regions. All will ship from {region}. Use the Ship from selector to change.” All orders in the batch ship from the region shown in the Ship from selector — change it if needed.
Follow Steps 3 to 5 from Section 5. After you confirm, the completion screen shows a summary (“X of Y fulfillments created successfully”) with a Successful table (order numbers, tracking numbers, couriers) and, if any failed, a Failed table with the reason.
Click [Download All AWBs] to get a single merged PDF containing labels for all successfully fulfilled orders.
The Air Waybill (AWB) is the shipping label you attach to your parcel before handing it to the courier. You can print in A4 or 4”×6” sticker format — pick the format on the AWB page.
Click [Download Air Waybill] immediately after fulfillment. The AWB opens in a new browser tab as a PDF.
The AWB page opens inside EasyStore admin. Choose A4 or 4”×6” sticker, then preview/download.
After bulk fulfillment you can download all AWBs as a single merged PDF — one print job covers all your labels.
Click [Download All AWBs] on the bulk fulfillment completion screen (see Section 6 — Step 3).
The bulk AWB page opens, generates each label, and merges the available ones into a single PDF.
Note: If some selected orders can’t be downloaded (for example they weren’t fulfilled via EasyParcel, or their label isn’t ready yet), the page lists those orders with the reason and still lets you download the ones that are available.
Orders fulfilled in the older MY/SG apps: AWBs for orders booked through this app use that order’s saved region account. For older orders booked before the app was consolidated, the app automatically checks each of your configured EasyParcel accounts to find and fetch the label.
Once an order is fulfilled, the app automatically keeps your EasyStore order timeline up to date — no manual action required.
EasyParcel pushes each status change to the app in real time (as soon as the courier scans the parcel), and the app immediately updates the order timeline in EasyStore. There’s no waiting for a scheduled check.
| Status | Meaning |
|---|---|
| Pending | Parcel booked, waiting for EasyParcel pickup |
| In Transit | EasyParcel has collected the parcel and it is moving |
| Out for Delivery | Parcel is on the delivery vehicle |
| Delivered | Parcel delivered to the recipient |
| Failed | Delivery attempt failed |
| Returned | Parcel returned to sender |
| Cancelled | Shipment cancelled |
When the parcel status reaches Delivered, EasyStore automatically sends a notification email to your customer. This is handled by EasyStore — you do not need to do anything.
To remove the app from your store:
Your settings, fulfillment history, and tracking logs are retained. If you reinstall the app in the future, you only need to re-authorize with EasyStore — all your previous settings (including every region) will still be there.
Check the following in Settings, for the relevant region:
If all of the above are correct, check if you have a Fallback Rate configured so customers always see at least one shipping option.
Your Integration ID failed verification. Confirm that:
Your EasyParcel wallet does not have enough credit to pay for the shipment. Top up your balance at EasyParcel Dashboard, then try fulfilling the order again.
This order was not fulfilled using EasyParcel (it may have been fulfilled manually or via another app), so there is no EasyParcel label to download. If the order was fulfilled through EasyParcel but you still see this, confirm the correct region’s EasyParcel account is configured in Settings.
Check your handling fee and percentage settings in the Settings page (for the relevant region):
Reduce or clear these fields if you don’t want any markup.
Tracking updates are pushed by EasyParcel in real time. If a status looks stale:
For further help, visit the EasyStore Help Centre or contact EasyParcel support.