Files

52 lines
4.1 KiB
Bash

# pay v2 — pangolin1 部署 env 模板(/etc/pay-v2/pay.env)。
#
# ⚠️ 本文件全是占位符,禁止填真值后提交进 git!真值一律经 Bitwarden → rbw 在
# pangolin1 上手工写入 /etc/pay-v2/pay.env(权限建议 640, root:payv2)。
# 部署脚本 deploy.sh 不会创建/覆盖这个文件——首次部署需手工准备好它。
#
# viper 的 env 覆盖规则是 "." → "_" 再转大写(见 config/config.go SetEnvKeyReplacer),
# 下面每个变量名后注释了它覆盖的是 config.yaml 的哪个字段。
# ── 基础服务 ────────────────────────────────────────────────────────────────
SERVER_PORT=8090 # server.port(pangolin1 上 8090,旧 USDT watcher 已下线释放)
SERVER_MODE=release # server.mode(release 关 gin 调试日志)
DATABASE_DRIVER=sqlite # database.driver
DATABASE_DSN=/var/lib/pay-v2/pay.db # database.dsn(sqlite 文件路径,ExecStart 前需目录存在且属主可写)
# ── crypto 渠道(USDT-TRC20,watch-only,不持私钥)── Bitwarden 条目建议命名
# "pay-v2 pangolin1 crypto-1" ─────────────────────────────────────────────
# 收款地址(TRC20,仅地址,不涉及私钥/助记词):
PANGOLIN_CRYPTO_1_ADDRESS=<占位-TRC20收款地址-走Bitwarden>
# TronGrid API key:优先用账户级 <PREFIX>_TRONGRID_KEY,缺省回退全局 TRONGRID_API_KEY
# (internal/provider/crypto/crypto.go::apiKey)。单账户场景填全局这个即可,
# 多账户各自限流时再加 PANGOLIN_CRYPTO_1_TRONGRID_KEY 覆盖。
TRONGRID_API_KEY=<占位-TronGrid-APIKey-走Bitwarden>
# PANGOLIN_CRYPTO_1_TRONGRID_KEY=<可选-账户专属TronGrid-Key-走Bitwarden>
# ── 哪吒(nezha)渠道(CNY 结算)── Bitwarden 条目建议命名 "pay-v2 pangolin1 nezha-1" ──
# provider 正在另一分支开发,以下三项是其将读取的凭证 env(命名按
# CredentialEnvPrefix=PANGOLIN_NEZHA_1 推导,若合并后实际 key 名不同,以那边为准再改)。
PANGOLIN_NEZHA_1_PID=<占位-哪吒商户号-走Bitwarden>
# 商户 RSA 私钥(PEM)。若 env 单行存不了原始换行,推荐把 PEM 内的真实换行替换成
# 字面 "\n" 再存一行(需 provider 侧对应做 strings.ReplaceAll(v, `\n`, "\n") 解码;
# nezha provider 合并后核对其实际解析方式,当前仅占位)。
PANGOLIN_NEZHA_1_PRIVATE_KEY=<占位-商户RSA私钥PEM-走Bitwarden>
# 哪吒平台 RSA 公钥(PEM,验证哪吒回调签名用),同上单行转义方式。
PANGOLIN_NEZHA_1_PLATFORM_PUBLIC_KEY=<占位-平台RSA公钥PEM-走Bitwarden>
# ── 业务对接(pangolin)── Bitwarden 条目建议命名 "pay-v2 BIZ_PANGOLIN_SECRET" ──
# HMAC 共享密钥,须与 pangolin-server 那侧 PAY_BIZ_SECRET 同值(见
# server/internal/httpapi 对 /v1/webhook/pay 的验签)。
BIZ_PANGOLIN_SECRET=<占位-与pangolin-server-PAY_BIZ_SECRET同值-走Bitwarden>
# ── 后台守护 ────────────────────────────────────────────────────────────────
RECONCILE_ENABLED=true # reconcile.enabled(过期清理/查单对账/退款自愈/crypto孤儿扫描)
QUERY_SYNC_ENABLED=true # query_sync.enabled ⚠️ 注意是 QUERY_SYNC(带下划线),
# 不是 QUERYSYNC——viper 的 "." → "_" 替换对 query_sync.enabled
# 展开成 QUERY_SYNC_ENABLED(已用本地 viper 用例验证过)。
# ── MOCK 渠道:pangolin1 是真实收款环境,禁止开 ─────────────────────────────
# 不要在这里设置 MOCK_CHANNEL_ENABLED(留空/不写即默认 false)。一旦误设为 true 会
# 注册 fake 渠道 + 挂载 /api/v2/dev/orders/:order_no/mark-paid 这类联调专用端点。
# MOCK_CHANNEL_ENABLED=true # ← 禁止在生产取消这行注释