Moksa for WooCommerce
Moksa for WooCommerce
Description
A Taiwan-focused WooCommerce extension. Toggleable modules cover ECPay (綠界), NewebPay (藍新), SmilePay (速買配), LINE Pay, PAYUNi (統一金流), PayNow (立吉富), PChomePay (支付連), TapPay and Shopline Payments for payments; ECPay, NewebPay, SmilePay, PAYUNi and PayNow for convenience-store + home-delivery shipping; ezPay, ECPay, SmilePay, PayNow and AMEGO for Taiwan e-invoicing.
Enable only the providers you need from a single settings page — payment, shipping and invoice modules are fully independent and can be mixed in any combination.
HPOS-native, Block Checkout-native, PHP 8.2+ strict-typed, GPLv3, no premium gating.
Moksa AI assistant (new in 1.3.0)
Built on the WordPress 7.0 AI Client, Moksa AI is an optional in-admin chat assistant that lets you run common store tasks in natural language: find orders by invoice / shipping / payment number, look up order details and counts, change order status (single or batch), add order notes, issue / void / allowance e-invoices, create and print shipping labels, and enable or disable modules, individual payment methods and invoice issuing methods. Every action that changes data first shows a summary and waits for your explicit confirmation before it runs. The assistant uses whichever AI provider you connect under Settings Connectors — the plugin never handles your AI keys, refunds, or credentials.
WooCommerce Subscriptions (new in 1.18.0)
With WooCommerce Subscriptions installed, six payment methods can charge renewals automatically. Renewals need no extra setup once the method below is ready; what each one needs first:
- TapPay credit card — No extra setting. With 3D Secure on, free trials are not offered and customers cannot change their card themselves.
- PAYUNi credit card — Ask PAYUNi to enable the card token and background authorization services and register your server IP. Then tick Automatic renewals under Subscriptions in the PAYUNi settings (Payment section).
- LINE Pay — Ask LINE Pay to approve automatic payments for your store. Then tick Automatic renewals under Subscriptions in the LINE Pay settings.
- Shopline Payments — Enable Shopline Payments credit card (on-page). Shopline has to turn on payment notifications for your store; the address to send them is shown in the Shopline Payments settings.
- ECPay saved card — ECPay has to enable card binding (on-site payment 2.0) for your store. Turn on daily automatic capture in the ECPay dashboard, otherwise renewal payments are never captured. In the ECPay settings, tick ECPay credit card (saved for subscriptions) under Enabled payment methods, then enable it under WooCommerce Settings Payments. The card check amount for free trials is under Subscriptions in the ECPay settings.
- NewebPay recurring payments — Ask NewebPay to enable credit card recurring payments (定期定額) for your store. In the NewebPay settings, tick NewebPay recurring credit card under Enabled payment methods, then enable it under WooCommerce Settings Payments. NewebPay charges on its own schedule and notifies your store after each charge, so there is no notification address to set. One subscription schedule per order, with the same amount every period; mixing one-time products or different schedules in the cart hides this method. Under Subscriptions in the NewebPay settings, tick Mandate status changes only if NewebPay has enabled mandate changes for your store; it adds pausing and resuming. Cancelling always works.
Customers need an account to subscribe. Payment results reach your store at /wc-api/ addresses, so make sure a firewall or security plugin does not block them.
WPSubscription (new in 1.19.0)
With WPSubscription installed, PAYUNi credit card and NewebPay recurring payments can charge its renewals too, using the same settings as above. NewebPay recurring payments work for one subscription per order with no free trial, sign-up fee or shipping fee. A paid renewal reactivates the subscription straight away, so you can keep the order in Processing until it ships.
Source
Source code and issue tracker: github.com/Moksa1123/moksa-for-woocommerce.
External Services
This plugin is a toolkit of optional integrations. Each integration only loads and only transmits data when you, the site administrator, explicitly enable that module and a customer chooses the corresponding payment / shipping / invoice option. No data is sent to any third party unless the relevant module is enabled and used. The plugin never sends data to Moksa or any analytics/telemetry service.
For every integration below, requests are made server-to-server over HTTPS using your own merchant credentials, and typically include the order number, order amount, buyer name, e-mail, phone, shipping/billing address, item descriptions, and (for e-invoices) the buyer tax ID or carrier number that the customer enters at checkout.
When a module is set to test/sandbox mode, requests go to the provider’s corresponding staging hostname instead of the production one listed below (for example payment-stage.ecpay.com.tw, logistics-stage.ecpay.com.tw, einvoice-stage.ecpay.com.tw, ecpg-stage.ecpay.com.tw, ccore.newebpay.com, sandbox-api.payuni.com.tw, sandbox-api.pchomepay.com.tw, sandbox-api-pay.line.me, sandbox.tappaysdk.com, api-sandbox.shoplinepayments.com, cinv.ezpay.com.tw, test.paynow.com.tw, testinvoice.paynow.com.tw, ssl.smse.com.tw/api_test).
Payment gateways
These run when a customer selects the gateway at checkout (to create the payment) and when you query, capture, refund or void the payment from the order screen.
- ECPay (綠界科技) — credit card, ATM, CVS, barcode, installments, wallets. Endpoints: payment.ecpay.com.tw, ecpayment.ecpay.com.tw, ecpg.ecpay.com.tw (test mode: payment-stage.ecpay.com.tw, ecpayment-stage.ecpay.com.tw, ecpg-stage.ecpay.com.tw). The saved-card gateway for subscriptions loads ECPay’s card form script from ecpg.ecpay.com.tw in the browser; card data goes straight to ECPay. Terms: https://support.ecpay.com.tw/10075/ — Privacy: https://www.ecpay.com.tw/CreditCard/Privacy
- NewebPay (藍新金流) — credit card, ATM, CVS, barcode, wallets. Endpoints: core.newebpay.com (test mode: ccore.newebpay.com). Terms: https://www.newebpay.com/website/Page/content/new_service_policy — Privacy: https://www.newebpay.com/website/Page/content/privacy
- PAYUNi (統一金流) — credit card, ATM, CVS, wallets. Endpoints: api.payuni.com.tw (test mode: sandbox-api.payuni.com.tw). Terms: https://www.payuni.com.tw/terms — Privacy: https://www.payuni.com.tw/privacy
- SmilePay (速買配) — credit card, ATM, CVS, barcode. Endpoints: ssl.smse.com.tw (SmilePay’s own API hostname — smse.com.tw and smilepay.net are both operated by the same company, 訊航科技 Shinhang Technology; its policies are published on the smilepay.net brand site; test mode uses the /api_test path on the same hostname). Terms: https://www.smilepay.net/em/servicepolicy.asp — Privacy: https://www.smilepay.net/em/servicepolicy.asp (SmilePay publishes a single combined service & personal-data-protection document, so both links point at that document)
- PayNow (立吉富) — credit card, ATM, CVS, installments. Endpoints: www.paynow.com.tw (test mode: test.paynow.com.tw). Terms: https://www.paynow.com.tw/PayNowUserAgreement.aspx — Privacy: https://www.paynow.com.tw/safepolicy.aspx
- PChomePay (支付連) — credit card, ATM, CVS, barcode. Endpoints: api.pchomepay.com.tw (test mode: sandbox-api.pchomepay.com.tw). Terms: https://www.pchomepay.com.tw/other/service_treaty — Privacy: https://web.pchomepay.com.tw/introduction/privacy
- LINE Pay — LINE Pay wallet. Endpoints: api-pay.line.me (test mode: sandbox-api-pay.line.me). Terms: https://terms2.line.me/linepay_TW_TermsofUse?lang=zh-Hant — Privacy: https://terms2.line.me/linepay_TW_PP
- TapPay — credit card via the TapPay Fields SDK loaded in the browser (js.tappaysdk.com). Card data is tokenised client-side; only the token reaches your server. Endpoints: prod.tappaysdk.com, js.tappaysdk.com (test mode: sandbox.tappaysdk.com). Terms: https://www.tappaysdk.com/taiwan-en/privacy-term — Privacy: https://www.tappaysdk.com/taiwan-en/privacy-term (TapPay publishes a single combined terms & privacy document, so both links point at that document)
- Shopline Payments — credit card, wallets. Endpoints: api.shoplinepayments.com (test mode: api-sandbox.shoplinepayments.com). The on-page card gateway loads Shopline’s card form script from cdn.shoplinepayments.com in the browser; card data goes straight to Shopline Payments. Terms: https://book.shoplineapp.com/pages/shopline-payments-terms-and-conditions — Privacy: https://www.shopline.com/shopline-payments-privacy
Shipping / logistics
These run when a customer opens the convenience-store map at checkout (the store-selection map is hosted by the provider), when a shipment is created after an order is placed, and when you print a label or query shipment status.
- ECPay Logistics (綠界物流) — 7-11 / FamilyMart / Hi-Life / OK / home delivery. Endpoints: logistics.ecpay.com.tw (test mode: logistics-stage.ecpay.com.tw). Terms: https://support.ecpay.com.tw/10075/ — Privacy: https://www.ecpay.com.tw/CreditCard/Privacy
- NewebPay Logistics (藍新物流) — CVS / home delivery. Endpoints: core.newebpay.com (test mode: ccore.newebpay.com). Terms: https://www.newebpay.com/website/Page/content/new_service_policy — Privacy: https://www.newebpay.com/website/Page/content/privacy
- PAYUNi Logistics (統一物流) — 7-11 / home delivery (incl. cold chain). Endpoints: api.payuni.com.tw (test mode: sandbox-api.payuni.com.tw). Terms: https://www.payuni.com.tw/terms — Privacy: https://www.payuni.com.tw/privacy
- SmilePay Logistics (速買配物流) — 7-11 / FamilyMart / home delivery. Endpoints: ssl.smse.com.tw (SmilePay’s own API hostname; see the SmilePay entry above — same operator as smilepay.net; test mode uses the /api_test path on the same hostname). Terms: https://www.smilepay.net/em/servicepolicy.asp — Privacy: https://www.smilepay.net/em/servicepolicy.asp (single combined service & personal-data-protection document)
E-invoice (Taiwan electronic invoicing)
These run when an invoice is issued for an order (immediately on payment, on completion, or manually, per your setting) and when you void / issue an allowance / query an invoice. Data includes the order amount, item descriptions and the buyer’s carrier number, donation code or company tax ID entered at checkout.
- ECPay e-Invoice (綠界電子發票) — Endpoints: einvoice.ecpay.com.tw (test mode: einvoice-stage.ecpay.com.tw). Terms: https://support.ecpay.com.tw/10075/ — Privacy: https://www.ecpay.com.tw/CreditCard/Privacy
- ezPay e-Invoice (ezPay 電子發票) — Endpoints: inv.ezpay.com.tw (test mode: cinv.ezpay.com.tw). Terms: https://www.ezpay.com.tw/info/Site_description/service_page/member — Privacy: https://www.ezpay.com.tw/info/Site_description/service_page/member (ezPay publishes a single combined membership & data-protection terms page, so both links point at that page)
- SmilePay e-Invoice (速買配電子發票) — Endpoints: ssl.smse.com.tw (SmilePay’s own API hostname; see the SmilePay entry above — same operator as smilepay.net; test mode uses the /api_test path on the same hostname). Terms: https://www.smilepay.net/em/servicepolicy.asp — Privacy: https://www.smilepay.net/em/servicepolicy.asp (single combined service & personal-data-protection document)
- PayNow e-Invoice (立吉富電子發票) — Endpoints: invoice.paynow.com.tw (test mode: testinvoice.paynow.com.tw). Terms: https://www.paynow.com.tw/PayNowUserAgreement.aspx — Privacy: https://www.paynow.com.tw/safepolicy.aspx
- AMEGO e-Invoice (光貿電子發票) — Endpoints: invoice-api.amego.tw. Terms: https://invoice.amego.tw/term — Privacy: https://invoice.amego.tw/privacy
Carrier tracking links (hyperlinks only — the plugin itself never contacts these hosts)
When a shipment has a tracking number, the order screen renders a plain hyperlink to the carrier’s own public parcel-tracking page. The plugin makes no HTTP request to any of these hosts and transmits no data to them; the shipment number only leaves your site if a person clicks the link, at which point the carrier’s own terms and privacy policy apply in their browser:
- T-Cat 黑貓宅配 (t-cat.com.tw, incl. the tracking link shown for PAYUNi home-delivery shipments) — Privacy: https://www.t-cat.com.tw/member/privacy.aspx
- 7-ELEVEN (eservice.7-11.com.tw) — Privacy: https://www.7-11.com.tw/privacy.asp
- 7-ELEVEN pickup status via PAYUNi logistics (tracking.shopmore.com.tw, operated by the Uni-President group for PAYUNi shipments) — service info: https://help.shopmore.com.tw/ ; the PAYUNi logistics policies above apply to the shipment itself
- FamilyMart 全家 (fmec.famiport.com.tw), Hi-Life 萊爾富 (www.hilife.com.tw), OK Mart (ecservice.okmart.com.tw) — public tracking pages of each chain; their site policies are linked from those pages
- Chunghwa Post 中華郵政 (postserv.post.gov.tw) — Privacy: https://www.post.gov.tw/post/internet/Group/index.jsp?ID=156739569921
Moksa AI assistant (optional, admin-only)
When an administrator actively uses the in-admin Moksa AI assistant, the typed question and the store/order data needed to answer it (for example an order number, status, totals or invoice/shipping numbers) are sent to the AI provider you have connected in WordPress under Settings Connectors — Anthropic, Google or OpenAI — through the WordPress 7.0 AI Client. This never happens automatically and only for the administrator using the assistant. The plugin does not store these conversations on any Moksa server, sends nothing to Moksa, and never transmits your AI provider keys (WordPress manages the connector credentials). The transmitted data is governed by the terms and privacy policy of the provider you choose: Anthropic — Terms: https://www.anthropic.com/legal/commercial-terms — Privacy: https://www.anthropic.com/legal/privacy ; Google — Terms: https://ai.google.dev/gemini-api/terms — Privacy: https://policies.google.com/privacy ; OpenAI — Terms: https://openai.com/policies/terms-of-use/ — Privacy: https://openai.com/policies/privacy-policy/
MCP server (optional, off by default)
This plugin can optionally expose a standards-compliant, stateless MCP (Model Context Protocol) endpoint on your own site at /wp-json/moksa-for-woocommerce/v1/mcp, so a standard MCP client you control (for example mcp-remote or Claude) can look up orders and reports through the WordPress REST API. This is not a Moksa service and is not a phone-home: nothing is sent to Moksa, the endpoint only runs on your server and only exposes the plugin’s own WordPress Abilities. It is off by default and must be turned on under WooCommerce Moksa AI Settings. Access requires authentication with a WordPress Application Password for a user that has the “edit orders” capability (use a dedicated, limited account). By default only read-only tools are exposed; order-changing tools stay hidden unless you also enable the separate “allow external AI to make changes” option, and every request is permission-checked on your server.
Installation
Minimum Requirements
- PHP 8.2+
- WordPress 7.0+
- WooCommerce 9.9+
Setup
- Install and activate the plugin.
- Go to WooCommerce Settings Moksa for WooCommerce to enable the modules you need.
- Configure the credentials for each enabled provider on its dedicated tab.
Screenshots

Modules overview — enable only the payment, shipping and e-invoice integrations you need, all from one settings page.

Block-based Checkout rendering Taiwanese payment methods natively, alongside the order summary.

Order list with the plugin's own order statuses plus shipping-method and tracking-number columns (HPOS-native).

Order edit screen with per-provider payment, shipping and e-invoice cards.

Issuing an e-invoice from the order screen, including carrier type and mobile barcode entry.
Faq
Yes. Every payment method ships an AbstractPaymentMethodType + React component, and the convenience-store picker / invoice fields render inside the Checkout block.
Yes. All order meta uses $order->update_meta_data() / $order->save(), never update_post_meta().
Yes. TapPay, PAYUNi credit card, LINE Pay, Shopline Payments (card), ECPay (saved card) and NewebPay (recurring payments) can charge renewals automatically. See “WooCommerce Subscriptions” in the description for what each one needs.
Yes, with PAYUNi credit card and NewebPay recurring payments. See “WPSubscription” in the description.
Yes. Payment, shipping and invoice modules are fully independent — any combination works.
It is an optional in-admin chat assistant for managing orders, e-invoices, shipping labels and module settings in natural language. It requires WordPress 7.0 (for the built-in AI Client) and an AI provider connected under Settings Connectors; enable it under the plugin’s Advanced settings. Every action that changes data first asks for your confirmation, and the assistant can never read or change your provider credentials, switch sandbox/live mode, or issue refunds.
Yes, optional and off by default. Turn it on under WooCommerce Moksa AI Settings “Enable external MCP server”. The plugin then serves a standards-compliant, stateless MCP (Model Context Protocol) endpoint at /wp-json/moksa-for-woocommerce/v1/mcp that any standard MCP client (for example mcp-remote or Claude) can connect to directly — no bridge required.
Authentication uses a WordPress Application Password for a user that has the “edit orders” capability; use a dedicated, limited account rather than an administrator. Connect your client to the endpoint with an Authorization: Basic <base64 of username:application-password> header. By default only read-only tools (look up orders, reports, settings overview) are exposed; order-changing tools stay hidden unless you also enable the “allow external AI to make changes” option, and destructive actions still require in-store confirmation. Every request is permission-checked on the server.
Reviews
推薦!
By fan wu (bboyfan) on August 5, 2026
超級金物流、發票大禮包!推薦
Changelog
1.19.0 – 2026-10-26
- New: WPSubscription renewals with PAYUNi credit card and NewebPay recurring payments.
- Fixed: When NewebPay sends the same duplicate mandate twice, it is now cancelled and reported only once.
1.18.3 – 2026-10-26
- Fixed: A PAYUNi 7-ELEVEN or T-Cat shipment number that missed its print notice is now picked up by the hourly status check and the Query button.
1.18.2 – 2026-10-25
- Fixed: ECPay saved card and NewebPay recurring credit card can now be turned on from their settings pages, and their subscription options moved there too.
1.18.1 – 2026-10-25
- Fixed: The subscriptions switch for LINE Pay and PAYUNi moved to their own settings pages, where it is easier to find.
1.18.0 – 2026-10-24
- New: WooCommerce Subscriptions renewals with TapPay, PAYUNi, LINE Pay, Shopline Payments, ECPay (saved cards) and NewebPay (recurring payments).
- Fixed: PAYUNi shipping updates now send the shipped and arrived-at-store emails.
1.17.0 – 2026-10-24
- New: TapPay wallets can use their own Merchant ID, T-Cat package size for ECPay, and AFTEE capture for NewebPay.
- Fixed: NewebPay shipping statuses and labels, PayNow invoices, Shopline Payments amount checks, voiding ECPay and Amego invoices that have allowances, and other payment, shipping and invoice fixes from an API spec review.
1.16.2 – 2026-10-22
- Fixed: SmilePay T-Cat home delivery shipments can be created again; the expected delivery date is now sent.
1.16.1 – 2026-10-21
- Fixed: TapPay payments follow the official transaction statuses, and 3-D Secure or wallet payments still awaiting confirmation are checked again automatically instead of staying pending.
1.16.0 – 2026-10-15
- New: scannable store barcodes, e-invoice details for customers, PAYUNi payment codes on the order page and in email, and PayNow / SmilePay payment cards.
- Fixed: payment deadlines in Taiwan time, ECPay refunds before capture, shipping statuses no longer go backwards, and clearer order notes and settings.
1.15.0 – 2026-10-15
- Stricter PayNow, TapPay and SmilePay checks, safer order lookup, NewebPay and ECPay payment codes saved and emailed, late failure notices no longer reopen paid orders, and invoice and refund fixes.
1.14.0 – 2026-10-15
- PAYUNi uncaptured card payments can be cancelled from the refund screen; refunds work for disabled payment methods; split shipments, PAYUNi printing, cash on delivery limits, checkout phone and invoice checks, SmilePay test mode and email fixes.