跳至主要內容

API 收款

smilepayz teams大约 9 分钟

请求

收款API使商户能够发起向客户收取付款的交易。
支持的支付方式包括:

QRPAY(快速响应支付)
银行转账
数字钱包
信用卡/借记卡
其他数字支付渠道

请求路径:

沙盒:https://sandbox-gateway.smilepayz.com/v2.0/transaction/pay-in
生产:https://gateway.smilepayz.com/v2.0/transaction/pay-in

请求头参数

字段必填类型描述
Content-TypeMStringHTTP内容类型规范
固定值:application/json
正确解析请求所必需
X-TIMESTAMPMStringISO 8601日期时间格式,带时区偏移
格式:yyyy-MM-ddTHH:mm:ss±HH:mm
示例:2020-12-17T10:55:00+07:00
注意:必须是当前服务器时间,误差在±5分钟内
X-SIGNATUREMString请求认证的数字签名
参见签名生成
X-PARTNER-IDMString平台分配的唯一商户标识符
格式:字母数字字符串
用于商户认证和交易路由
请输入merchantID

请求体参数

字段必填类型描述
orderNoMString(32)商户跟踪的唯一交易标识符
格式:仅字母数字字符
长度:6-32个字符
在商户范围内必须是唯一的
purposeMString(64)人类可读的交易描述
格式:UTF-8编码字符串
长度:1-64个字符
用于交易历史和报告
merchantMObject商户识别和业务信息容器
包含主要和子商户详情
交易路由和结算所必需
    merchantIdMString平台分配的主要商户标识符
格式:字母数字字符串
用于交易路由和结算处理
    merchantNameOString商户的注册业务名称
格式:UTF-8编码字符串
在支付界面和交易记录中显示
    subMerchantIdOString多级商户结构的子商户标识符
格式:字母数字字符串
子商户交易处理所必需
    subMerchantNameOString用于显示的子商户业务名称
格式:UTF-8编码字符串
在支付界面和交易记录中显示
moneyMObject交易金额和货币规格容器
定义支付价值和货币单位
支付处理和结算所必需
    currencyMStringISO 4217货币代码规范
固定值:THB(泰铢)
确定支付处理规则和结算货币
    amountMNumber最小货币单位的交易金额
格式:整数值
示例:200表示THB 200.00
范围:100-999999999
payerMObject客户支付信息容器
用于支付验证和客户沟通
    nameMString支付验证的客户全名
格式:UTF-8编码字符串
用于支付处理和交易记录
    accountNoMString支付处理的客户银行账户号
格式:字母数字字符串
用于银行转账支付验证
    bankNameMString支付处理的客户银行名称
格式:预定义银行代码
示例:KBANK、BBL、SCB
指定paymentMethod时必需
⚠️ BANK支付方式必需
参见支付方式列表
paymentMethodOString首选支付方式规范
格式:预定义支付方式代码
示例:QRPAYBANK 参考:支付方式列表
expiryPeriodONumber支付会话超时持续时间(秒)
格式:整数值
默认:3600秒(1小时)
redirectUrlOString(256)支付后重定向目标URL
格式:有效的HTTP/HTTPS URL
最大长度:256个字符
客户在支付完成后重定向到这里
callbackUrlOString(256)Webhook通知端点URL
格式:有效的HTTP/HTTPS URL
最大长度:256个字符
接收实时交易状态更新

重要说明

1. 支付方式选择: 如果未指定paymentMethod,将返回结账页面供客户选择其首选支付方式
2. 付款人信息要求: 指定paymentMethod时,您必须提供付款人姓名、账户号和银行名称以进行支付验证
3. 银行转账要求: 当paymentMethod设置为BANK时,付款人信息(姓名、accountNo、bankName)对银行转账处理是⚠️ 必需的
4. 银行名称参考: 有关支持的银行名称,请参见支付方式列表


请求体示例 – 交易请求:

Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+07:00
X-SIGNATURE: 7MHd9v5/m9JeqmDZVwWBZUZ5J5...7120QnFEny7Qm7uQR1G0TWCh10fsU6nVxiRoeoQ==
X-PARTNER-ID: 20001

响应

HTTP响应

字段必填类型描述
Content-TypeMStringHTTP响应内容类型规范
固定值:application/json
指示JSON响应格式
X-TIMESTAMPMStringISO 8601日期时间格式,带时区偏移
格式:yyyy-MM-ddTHH:mm:ss±HH:mm
示例:2020-12-17T10:55:00+07:00

响应体参数

字段必填类型描述
codeMStringAPI响应状态码,指示操作结果
格式:两位数字字符串
成功:"00",错误:其他代码
用于程序化响应处理
messageMString人类可读的响应状态描述
格式:UTF-8编码字符串
提供操作结果的详细信息
根据请求语言本地化
orderNoMString用于参考的原始商户交易标识符
格式:与请求orderNo相同
用于交易跟踪和对账
tradeNoOString系统跟踪的内部交易参考号
格式:系统生成的字母数字字符串
用于内部交易管理和支持
merchantMObject包含账户详情的商户信息容器
包含商户识别和账户信息
参见商户模型
    merchantIdMString平台分配的主要商户标识符
格式:字母数字字符串
用于交易路由和结算处理
    merchantNameOString商户的注册业务名称
格式:UTF-8编码字符串
在支付界面和交易记录中显示
    subMerchantIdOString多级商户结构的子商户标识符
格式:字母数字字符串
子商户交易处理所必需
    subMerchantNameOString用于显示的子商户业务名称
格式:UTF-8编码字符串
在支付界面和交易记录中显示
moneyMObject交易金额详情,带货币规格
包含确认的支付金额和货币
参见货币模型
    currencyMStringISO 4217货币代码规范
固定值:THB(泰铢)
确定支付处理规则和结算货币
    amountMNumber最小货币单位的交易金额
格式:整数值
示例:200表示THB 200.00
范围:100-999999999
    payAmountONumber费用和调整后的实际支付金额
格式:小数值
示例:199.98表示THB 199.98
用于结算计算
transactionTimeMStringISO 8601日期时间格式(yyyy-MM-ddTHH:mm:ss±HH:mm)
示例:2020-12-17T10:55:00+07:00
系统处理交易的时间戳
channelMObject支付处理渠道详情和说明
包含支付方式、URL和额外数据
参见渠道模型
statusOString当前交易处理状态
格式:预定义状态代码
示例:PROCESSING、SUCCESS、FAILED
参见状态模型
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+07:00

通知

HTTP请求

字段必填类型描述
Content-TypeMStringHTTP通知内容类型规范
固定值:application/json
指示JSON负载格式
X-TIMESTAMPMStringISO 8601日期时间格式,带时区偏移
格式:yyyy-MM-ddTHH:mm:ss±HH:mm
示例:2020-12-17T10:55:00+07:00
X-SIGNATUREMString通知验证的数字签名
格式:Base64编码签名
用于验证通知真实性
参见如何检查此值

通知体参数

字段必填类型描述
orderNoMString用于参考的原始商户交易标识符
格式:与请求orderNo相同
用于交易对账和跟踪
tradeNoMString系统跟踪的内部交易参考号
格式:系统生成的字母数字字符串
用于内部交易管理和支持
merchantIdMString交易路由的主要商户标识符
格式:字母数字字符串
用于商户识别和结算处理
merchantNameMString用于显示的注册商户业务名称
格式:UTF-8编码字符串
在交易记录和报告中显示
subMerchantIdOString多级结构的子商户标识符
格式:字母数字字符串
当子商户参与交易时包含
subMerchantNameOString用于显示的子商户业务名称
格式:UTF-8编码字符串
当子商户参与交易时包含
paymentMethodMString用于交易处理的支付方式
格式:预定义支付方式代码
示例:QRPAY、BANK
指示实际使用的支付渠道
transactionTimeMStringISO 8601日期时间格式(yyyy-MM-ddTHH:mm:ss±HH:mm)
支付提供商完成交易的时间戳
statusMString最终交易处理状态
格式:预定义状态代码
示例:SUCCESS、FAILED
指示交易的最终结果
参见状态模型
moneyMObject最终交易金额详情,带货币
包含确认的支付金额和货币
可能因费用或调整而与请求金额不同
参见货币模型
    currencyMStringISO 4217货币代码规范
固定值:THB(泰铢)
确定支付处理规则和结算货币
    amountMNumber最小货币单位的交易金额
格式:整数值
示例:200表示THB 200.00
范围:100-999999999
    payAmountONumber费用和调整后的实际支付金额
格式:小数值
示例:199.98表示THB 199.98
用于结算计算
payerMObject支付期间提供的客户信息
格式:客户数据对象
包含可用的付款人详情
参见付款人模型

返回

重要

通知请仅返回字符串SUCCESS

{
  "merchantId": "20001",
  "merchantName": "test",
  "money": {
    "amount": 150,
    "currency": "THB"
  },
  "orderNo": "20001f7d65167e8b1419896f2dfb",
  "payer": {
    "name": "payerName",
    "accountNo": "*****25432"
  },
  "paymentMethod": "QRPAY",
  "status": "SUCCESS",
  "tradeNo": "111200012412151710505955",
  "transactionTime": "2024-12-15T17:10:51"
}
上次编辑于: