ShopXM¶
Unified fiscal (NFSe) + payments platform. ShopXM consolidates the fiscal services previously delivered by the NFe server into one platform.
Facts¶
| Item | Detail |
|---|---|
| Type | Laravel / PHP-FPM app (native, not Docker) |
| Runs on | VPS prd1 (Hostinger) — see Architecture |
| Databases | MariaDB: nfe_prd, nfe_stg, nfe_sandbox (+ ShopXM DBs) |
| Repos | cloudxm-shopxm-server (+ legacy cloudxm-nfe-server being merged) |
| Environments | production, staging, sandbox |
| Domain(s) | [TODO: fill in public/admin domains] |
What it does¶
- NFSe (Nota Fiscal de Serviço Eletrônica) emission and compliance for clients.
- Payment processing flows (see Pay and Marlim integration).
- Client-facing dashboard(s) and admin console.
Deploy¶
PHP-FPM app pattern: GitLab CI rsyncs code to the VPS and runs artisan commands (migrate/seed). Follows the shared emcloud group conventions:
- SSH via group-level
PROD_SSH_KEY/PROD_USER/PROD_HOSTCI variables. - Secrets via repo-level masked CI variables (
STG_*/SANDBOX_*prefixes for non-production, unprefixed orPROD_*for production). - Never commit
.env; generate it during deploy from CI variables.
Runbooks¶
- Operations runbooks — generic deploy/incident flow.
- [TODO: link product-specific runbook when created]
Owners¶
[TODO: assign owner(s) + support rotation contact]