GPay 创付OPC 个人收款

GPay 创付 · 开发者文档

发起支付

兼容易支付协议:提交签名表单到 /epay/submit(浏览器跳转收银台)或 /epay/create(JSON 直接拿二维码)。金额单位为元(如 9.90),签名见签名与验签。

参数

参数必填说明
pid是商户号(API 密钥页可见)
type是wxpay(微信)或 alipay(支付宝)
out_trade_no是商户订单号,64 字符内,同一商户内唯一;重复提交返回同一订单(幂等)
notify_url是支付结果异步回调地址,必须为 https 且返回纯文本 success
return_url是支付完成后买家浏览器回跳地址(须为 http/https)
name是商品名称,显示在收银台
money是金额(元),如 9.90,最多两位小数
sign是签名,见 签名与验签
sign_type是固定 MD5

curl 示例

curl -i -X POST 'https://pay.example.com/epay/submit' \
  -d 'pid=10012&type=wxpay&out_trade_no=order-9527&notify_url=https%3A%2F%2Fshop.example.com%2Fpay%2Fnotify&return_url=https%3A%2F%2Fshop.example.com%2Fpay%2Freturn&name=AI%20%E4%BC%9A%E5%91%98%20%C2%B7%20%E6%9C%88%E5%8D%A1&money=9.90&sign=签名&sign_type=MD5'

PHP 示例

<?php
$params = [
  'pid' => '10012',
  'type' => 'wxpay',
  'out_trade_no' => 'order-9527',
  'notify_url' => 'https://shop.example.com/pay/notify',
  'return_url' => 'https://shop.example.com/pay/return',
  'name' => 'AI 会员 · 月卡',
  'money' => '9.90',
];
$params['sign'] = md5(http_build_query($params) . '<你的密钥>');
$params['sign_type'] = 'MD5';
header('Location: https://pay.example.com/epay/submit?' . http_build_query($params));

Python 示例

import hashlib
import os
from urllib.parse import urlencode

PID, KEY = os.environ["GPAY_PID"], os.environ["GPAY_KEY"]
params = {
    "pid": PID,
    "type": "wxpay",
    "out_trade_no": "order-9527",
    "notify_url": "https://shop.example.com/pay/notify",
    "return_url": "https://shop.example.com/pay/return",
    "name": "AI 会员 · 月卡",
    "money": "9.90",
}
params["sign"] = hashlib.md5((urlencode(params) + KEY).encode()).hexdigest()
params["sign_type"] = "MD5"
print("https://pay.example.com/epay/submit?" + urlencode(params))

幂等语义

以 out_trade_no 为幂等键:参数一致时重复提交返回同一订单(收银台链接不变);参数不一致返回 400。因此客户端重试可以安全重放,只需保证订单号与金额不变。

通道与限额

当前支持微信支付(wxpay)与支付宝(alipay)。个人收款边界:单笔 ≤ ¥1,000、单日 ≤ ¥50,000、单月建议 ≤ ¥100,000(超出请联系管理员升级企业模式)。

下一篇:回调通知 →返回首页 →