Cross-Platform Apps
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
| Client | H5 | WeChat Mini-Program | Alipay Mini-Program | Douyin Mini-Program | App |
|---|---|---|---|---|---|
Admin dax-pay-app-admin | Yes, port 9000 | Yes | Yes | Yes | Android / iOS |
Merchant dax-pay-app-merchant | Yes, port 9100 | Yes | Yes | Yes | Android / iOS |
Cashier dax-pay-mini-cashier | No | Yes | Yes | Yes | No |
Tech Stack
| Item | Technology |
|---|---|
| Base framework | unibest 4.4.1 · uni-app · Vue 3.4 · Vite · pnpm |
| UI components | @wot-ui/ui v2, component prefix wd-* |
| Styles and icons | UnoCSS · Carbon Icons |
| Internationalization | vue-i18n |
| Admin and merchant extensions | z-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.
| Target | Development output | Build output | Tool |
|---|---|---|---|
| H5 | Development server | dist/build/h5/ | Browser or static server |
| WeChat Mini-Program | dist/dev/mp-weixin/ | dist/build/mp-weixin/ | WeChat DevTools |
| Alipay Mini-Program | dist/dev/mp-alipay/ | dist/build/mp-alipay/ | Alipay Mini Program IDE |
| Douyin Mini-Program | dist/dev/mp-toutiao/ | dist/build/mp-toutiao/ | Douyin DevTools |
| App | dist/dev/app/ | dist/build/app/ | HBuilderX |
Environment
Each uni-app repository uses the env/ directory at its root:
# 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:
cd dax-pay-app-admin # or dax-pay-app-merchant
pnpm installCashier:
cd dax-pay-mini-cashier
pnpm installWeChat Mini-Program
Admin and merchant clients:
pnpm run dev:mpThe cashier can use the same command; its pnpm run dev is an alias that defaults to the WeChat mini-program:
pnpm run dev:mpKeep the terminal running after the command starts, then import the following directory of the corresponding repository into WeChat DevTools:
dist/dev/mp-weixin/Alipay and Douyin Mini-Programs
pnpm run dev:mp-alipay
pnpm run dev:mp-toutiaoImport respectively:
dist/dev/mp-alipay/
dist/dev/mp-toutiao/H5
Only the admin and merchant clients support uni-app H5:
pnpm run dev:h5The 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:
cd dax-pay-app-admin # or dax-pay-app-merchant
pnpm install
pnpm run dev:appThe development output is at:
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:
pnpm run dev:app-android
pnpm run dev:app-iosApp 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:
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-toutiaoAfter 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:
pnpm run upload:mpCashier build commands:
cd dax-pay-mini-cashier
pnpm install
pnpm run build:mp-weixin
pnpm run build:mp-alipay
pnpm run build:mp-toutiaoThe 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:
cd dax-pay-app-admin # or dax-pay-app-merchant
pnpm run build:appThe App build output is at:
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.
Related Pages
- 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