OSPAY API 是一个基于 Python Tornado 框架开发的支付系统后端,主要用于处理支付交易、用户管理和支付协议集成。该系统支持多种支付方式,包括代收(DS)、代付(DF)、UPI 支付等,并集成了多个第三方支付服务。
ospay_api/
├── application/ # 主应用代码
│ ├── app/ # 应用相关功能
│ │ └── websocket/ # 应用WebSocket通信
│ ├── base.py # 基础处理器类定义
│ ├── crypto.py # 加密操作
│ ├── lakshmi_api/ # Lakshmi API 相关功能
│ ├── message.py # 消息定义和错误代码
│ ├── pay/ # 支付相关功能
│ │ ├── order.py # 订单管理
│ │ ├── pay.py # 支付处理(代收/代付)
│ │ ├── status.py # 状态查询
│ │ ├── thirdCallback.py # 第三方回调处理
│ │ └── thirdPart.py # 第三方支付平台集成
│ ├── phonepe/ # PhonePe 支付集成
│ ├── sign.py # 签名验证和生成
│ ├── third/ # 第三方服务集成
│ │ ├── third_df.py # 第三方代付服务
│ │ └── sms_send.py # 短信发送服务
│ ├── utils.py # 实用工具函数
│ └── websocket/ # 监控WebSocket通信
├── config.py # 配置文件
├── config.example.py # 配置文件示例
├── constants.py # 常量定义
├── docker/ # Docker 相关配置
├── docker-compose.yml # Docker Compose 配置
├── global_resources.py # 全局资源管理
├── jobs/ # 定时任务和后台处理
│ ├── jio/ # JIO 银行协议集成
│ ├── maha/ # Maha 银行协议集成
│ ├── freecharge-monitor/# Freecharge 监控
│ ├── order_push.py # 订单推送处理
│ ├── time_out.py # 订单超时处理
│ └── weight.py # 支付通道权重计算
├── logs/ # 日志文件
├── main.py # 主入口文件
├── migrations/ # 数据库迁移
├── README.md # 项目说明
├── requirements.txt # 依赖包列表
├── router.py # 主路由配置
├── router_lakshmi.py # Lakshmi 路由配置
├── sql/ # SQL 脚本
├── static/ # 静态资源
└── template/ # 模板文件
BaseHandler
类,所有请求处理器都继承自该类/pay
, /pay/df
)/status/ds
, /status/df
)pay.py: 处理代收(DS)和代付(DF)的支付发起
Pay
类:处理代收支付请求Pay_df
类:处理代付支付请求order.py: 管理订单生命周期、状态更新和二维码生成
Order
类:生成订单支付页面Success
类:处理支付成功回调card_num
方法:处理卡号提交order_success_ds
方法:处理订单成功status.py: 提供订单状态查询和余额查询
Status_ds
类:代收订单状态查询Status_df
类:代付订单状态查询Balance
类:余额查询thirdCallback.py: 处理来自第三方支付提供商的回调
ApayNotify
, lucky_notify
, kingpay_notify
等thirdPart.py: 与外部支付服务集成
application/websocket/monitor.py: 实时监控系统
Websocket
类:处理监控 WebSocket 连接application/app/websocket/app.py: 移动应用通信
application/phonepe/phmonitor.py: PhonePe 支付 WebSocket 支持
third_df.py: 处理与各种支付网关和代付服务的集成
AGDF_Pay
, CUB_Pay
, WALLET_Pay
等sms_send.py: 短信发送功能
order_push.py: 处理订单分发
time_out.py: 处理订单超时
weight.py: 计算支付通道权重
银行协议集成:
jio/
: JIO 银行协议集成
maha/
: Maha 银行协议集成
freecharge-monitor/
: Freecharge 监控async/await
语法处理异步操作最近在 fix/client_call_api
分支中添加了 HTTP 轮询功能,用于客户端实时获取支付协议的登录进度和状态:
/pay
接口发起支付请求/pay/df
接口发起代付请求/status/ds
或 /status/df
查询订单状态requirements.txt
文件中docker/
目录和 docker-compose.yml
config.py
config.example.py
application/pay/thirdPart.py
中添加新支付渠道的类application/pay/thirdCallback.py
中添加回调处理函数router.py
中注册新的回调 URLjobs/
下创建新的银行协议目录async/await
语法