Skip to content

Cross-Platform Apps ​

Updated: 10/15/26, 5:44:21 PM

DaxPay provides three uni-app based cross-platform clients: the admin client, the merchant client, and the cashier. All three share the unibest 4, Vue 3.4, pnpm, and uni CLI workflow, but support different platforms.

The source code is not on the public source list and is obtained through authorized channels. See Project Build - Getting the Source. The cashier's remote repository was historically named dax-pay-cashier; locally the directory is always dax-pay-mini-cashier.

Platform Matrix ​

ClientH5WeChat Mini-ProgramAlipay Mini-ProgramDouyin Mini-ProgramApp
Admin dax-pay-app-adminYes, port 9000YesYesYesAndroid / iOS
Merchant dax-pay-app-merchantYes, port 9100YesYesYesAndroid / iOS
Cashier dax-pay-mini-cashierNoYesYesYesNo

Tech Stack ​

ItemTechnology
Base frameworkunibest 4.4.1 · uni-app · Vue 3.4 · Vite · pnpm
UI components@wot-ui/ui v2, component prefix wd-*
Styles and iconsUnoCSS · Carbon Icons
Internationalizationvue-i18n
Admin and merchant extensionsz-paging · ucharts

The cashier is a slimmed-down mini-program for paying users; it does not include the H5 and App targets, z-paging, or chart capabilities of the admin and merchant clients.

Output and Tools ​

The output of non-H5 uni-app targets is a compiled directory, not a static site you can deploy directly. Keep the development command running, then open the output directory with the matching tool.

TargetDevelopment outputBuild outputTool
H5Development serverdist/build/h5/Browser or static server
WeChat Mini-Programdist/dev/mp-weixin/dist/build/mp-weixin/WeChat DevTools
Alipay Mini-Programdist/dev/mp-alipay/dist/build/mp-alipay/Alipay Mini Program IDE
Douyin Mini-Programdist/dev/mp-toutiao/dist/build/mp-toutiao/Douyin DevTools
Appdist/dev/app/dist/build/app/HBuilderX

Environment ​

Each uni-app repository uses the env/ directory at its root:

ini
# env/.env
VITE_SERVER_BASEURL = 'http://127.0.0.1:9999'

When debugging on a physical device or in a phone developer tool, the backend address must be a LAN IP or a public domain reachable from the phone — never 127.0.0.1.

The admin and merchant H5 ports are 9000 and 9100 respectively. Mini-program and App compilation does not use a separate local development-server port.

AppID Configuration ​

For the admin and merchant clients, VITE_UNI_APPID is used for App builds and VITE_WX_APPID for the WeChat mini-program. The configuration source is env/.env; src/manifest.json is generated by the build plugin — do not treat it as a long-term configuration source and edit it directly.

Mini-Program Development ​

Install Dependencies ​

Admin and merchant clients:

bash
cd dax-pay-app-admin       # or dax-pay-app-merchant
pnpm install

Cashier:

bash
cd dax-pay-mini-cashier
pnpm install

WeChat Mini-Program ​

Admin and merchant clients:

bash
pnpm run dev:mp

The cashier can use the same command; its pnpm run dev is an alias that defaults to the WeChat mini-program:

bash
pnpm run dev:mp

Keep the terminal running after the command starts, then import the following directory of the corresponding repository into WeChat DevTools:

text
dist/dev/mp-weixin/

Alipay and Douyin Mini-Programs ​

bash
pnpm run dev:mp-alipay
pnpm run dev:mp-toutiao

Import respectively:

text
dist/dev/mp-alipay/
dist/dev/mp-toutiao/

H5 ​

Only the admin and merchant clients support uni-app H5:

bash
pnpm run dev:h5

The admin client is served at http://127.0.0.1:9000 and the merchant client at http://127.0.0.1:9100. pnpm run dev also starts H5, but the cashier's pnpm run dev defaults to the WeChat mini-program, so these docs prefer the explicit dev:h5 command.

App Development ​

Only the admin and merchant clients support the App target:

bash
cd dax-pay-app-admin       # or dax-pay-app-merchant
pnpm install
pnpm run dev:app

The development output is at:

text
dist/dev/app/

Import this directory into HBuilderX and run it on an Android emulator, a physical Android device, or an iOS base. Per-platform commands are also provided:

bash
pnpm run dev:app-android
pnpm run dev:app-ios

App development does not use the WeChat, Alipay, or Douyin developer tools. Android requires USB debugging enabled or an Android emulator; iOS physical devices and simulators require macOS, Xcode, and a matching HBuilderX environment.

Android hot reload

If the Android target does not hot-reload after importing dist/dev/app/, import the complete uni-app project into HBuilderX and run it as described in the unibest App guide. iOS can follow the standard flow and import dist/dev/app/.

Mini-Program Builds ​

The build commands are the same for the admin and merchant clients:

bash
cd dax-pay-app-admin       # or dax-pay-app-merchant
pnpm install

pnpm run build:h5
pnpm run build:mp-weixin
pnpm run build:mp-alipay
pnpm run build:mp-toutiao

After building, import dist/build/<platform>/ into the corresponding platform's developer tools for preview, trial, or upload.

With an upload key configured, the WeChat mini-program can be published with:

bash
pnpm run upload:mp

Cashier build commands:

bash
cd dax-pay-mini-cashier
pnpm install

pnpm run build:mp-weixin
pnpm run build:mp-alipay
pnpm run build:mp-toutiao

The cashier also supports pnpm run build to build the WeChat mini-program. Build artifacts are located at dist/build/<platform>/.

App Builds ​

Only the admin and merchant clients support App builds:

bash
cd dax-pay-app-admin       # or dax-pay-app-merchant
pnpm run build:app

The App build output is at:

text
dist/build/app/

Import dist/build/app/ into HBuilderX and generate Android / iOS installation packages via "Release → Native App Cloud Packaging" or local native packaging. pnpm run build:app only generates the App project files; it does not produce installation packages automatically.

If the project uses local native plugins, confirm before building that nativeplugins/ at the repository root and VITE_COPY_NATIVE_RES_ENABLE=true in env/.env are configured, and build a custom runtime base as required by the App native plugin workflow.

Client Overview ​

Admin dax-pay-app-admin ​

For platform operators — the mobile counterpart of the Web admin panel, used to manage merchants, stores, users, apps, and payment configuration. Pages include the workbench, apps, and profile as main entries, with sub-packages split by business domain such as merchant, payment, and system.

Merchant dax-pay-app-merchant ​

For merchant self-service: view transactions and manage merchant profiles, apps, stores, channel routing, and payment configuration. Data is isolated per merchant scope; pages include the workbench, apps, and profile as main entries.

Cashier dax-pay-mini-cashier ​

For end users who pay: it receives payment links and completes cashier flows such as QR scanning, H5, and wallets. The cashier has no H5 or App target, nor the tabBar and business sub-packages of the management clients.

  • Run: entry point for starting the backend, Web panels, and standalone H5
  • Project Build: getting the source, building the backend and Web/H5 apps
  • Local Debugging: tunneling, callback domains, and phone-side debugging
  • Configuration: environment variables and runtime config for each app