搜索结果

×

搜索结果将在这里显示。

🖼️ worldsxinpay直连支付格式

基本信息

  • 接口地址/api/payment
  • 请求方式POST

📌 请求头(Headers)说明

支付接口请求时必须在 HTTP 头中携带以下参数,每个字段都很关键,用于安全校验和身份验证。

参数名 说明 必须 格式示例
Content-Type 请求内容类型,固定为 application/json,表示请求体是 JSON 格式 application/json
X-API-Key 商户 API 密钥,由支付平台分配。用于标识商户身份并进行接口权限验证。 ABCD1234EFGH5678
X-User-ID 商户系统在支付平台注册的用户 ID,用于区分不同商户。 100001
X-Signature 请求签名,用于校验请求的完整性和防篡改。必须使用 HMAC-SHA256 算法结合商户 API Key 生成。 3f1c2b4a5e6d7f8g9h0i...

⚡ 请求头详细说明

  1. Content-Type

    • 必须为 application/json
    • 如果填写错误(如 text/plain),服务器会拒绝请求
  2. X-API-Key

    • 商户唯一标识
    • 请妥善保管,不要泄露
    • 与商户后台生成的密钥对应
  3. X-User-ID

    • 与商户账户绑定,用于识别操作请求来源
    • 需要和后台注册信息一致,否则会报 “用户不存在” 错误
  4. X-Signature

    • 签名算法:
      1. 将请求参数按字母升序排列
      2. 转为 JSON 字符串
      3. 使用 HMAC-SHA256 结合 API Key 生成签名
      4. 放入请求头 X-Signature
    • 示例生成(Node.js):
      const crypto = require('crypto');
      const apiKey = 'YOUR_API_KEY';
      const payload = JSON.stringify({ order_no: '123', amount: '29.90' });
      const signature = crypto.createHmac('sha256', apiKey).update(payload).digest('hex');
      console.log(signature);

请求参数(JSON Body)

参数名 类型 必须 详细说明
order_no string 商户系统生成的唯一订单号,需在商户系统内保持唯一性,用于识别此次支付交易。例如:"ORD202512120001"
amount string 商品总金额,需等于所有商品 price × quantity 的总和。格式建议为字符串并保留两位小数,如 "29.90"
other string SDK 自动生成的加密参数,用于风控校验和额外安全验证。调用 PaymentSDK 时会自动生成,无需手动填写。
card_no string 信用卡卡号,需提供完整数字,不含空格,例如 "4111111111111111"
exp_month string 信用卡有效期月份,格式为两位数字:"01" ~ "12"
exp_year string 信用卡有效期年份,4位数字,如 "2025"
cvv string 信用卡安全码(Visa/Master 为卡片背面3位,Amex为前面4位)。例如 "123"
bill_full_name string 持卡人账单姓名,需与信用卡账单信息一致,如 "James Harpool"
bill_phone string 持卡人账单电话,一般为国际规范手机号,如 "9132316070"
bill_email string 持卡人账单邮箱,用于支付验证和通知,如 "test@example.com"
bill_country string 国家代码(ISO 3166-1 alpha-2),如美国 "US",中国 "CN",加拿大 "CA" 等。
bill_state string 州 / 省,例如 "New Mexico""CA""广东"。与账单地址一致即可。
bill_city string 城市名称,如 "Los Angeles""上海"
bill_address1 string 持卡人账单地址第一行,通常为详细街道地址,如 "316 Don Fernando Street"
bill_address2 string 账单地址第二行,可选,如公寓号、单元号等,例如 "Unit B"
bill_zip string 邮政编码,例如 "87571""100000"。需与账单国家对应。
return_url string 支付完成后同步跳转地址,用户完成支付后浏览器会跳转到此 URL。
notify_url string 支付结果服务器回调地址(异步通知)。系统会以 POST 请求发送支付结果,请确保地址可访问且能接收 JSON。
ip_address string 客户端真实 IP 地址,例如 "128.123.56.14"。若服务器代发请求也需传用户 IP。
GoodsJson string 商品列表 JSON 字符串,包含商品名称、价格、数量。必须与 amount 金额一致。示例:
"{\"goodsInfo\":[{\"goodsName\":\"Product 1\",\"goodsPrice\":\"19.90\",\"quantity\":1}]}"

商品信息格式(GoodsJson)

{
  "goodsInfo": [
    {
      "goodsName": "商品名称",
      "goodsPrice": "商品价格",
      "quantity": 1
    }
  ]
}

SDK 自动生成 other 参数示例

<script src="https://js.worldsxinpay.com/payment_sdk_real_jm.js"></script>
<script>
async function makePayment() {
    const orderData = {
        "order_no": "TEST123456789",
        "amount": "29.90",
        "return_url": "https://www.example.com/return",
        "notify_url": "https://www.example.com/notify",
        "card_no": "4111111111111111",
        "exp_month": "12",
        "exp_year": "2025",
        "cvv": "123",
        "bill_full_name": "James Harpool",
        "bill_phone": "9132316070",
        "bill_email": "test@example.com",
        "bill_country": "US",
        "bill_state": "New Mexico",
        "bill_city": "Taos",
        "bill_address1": "316 Don Fernando Street",
        "bill_address2": "Unit B",
        "bill_zip": "87571",
        "ip_address": "128.123.56.14",
        "GoodsJson": "{'goodsInfo':[{'goodsName':'Product 1','goodsPrice':'19.90','quantity':1}]}"
    };
    const result = await PaymentSDK.processPayment(orderData);
}
</script>

完整示例请求

{
  "order_no": "TEST123456789",
  "amount": "29.90",
  "return_url": "https://www.example.com/return",
  "notify_url": "https://www.example.com/notify",
  "card_no": "4111111111111111",
  "exp_month": "12",
  "exp_year": "2025",
  "cvv": "123",
  "bill_full_name": "James Harpool",
  "bill_phone": "9132316070",
  "bill_email": "test@example.com",
  "bill_country": "US",
  "bill_state": "New Mexico",
  "bill_city": "Taos",
  "bill_address1": "316 Don Fernando Street",
  "bill_address2": "Unit B",
  "bill_zip": "87571",
  "ip_address": "128.123.56.14",
  "GoodsJson": "{\"goodsInfo\":[{\"goodsName\":\"Product 1\",\"goodsPrice\":\"19.90\",\"quantity\":1},{\"goodsName\":\"Product 2\",\"goodsPrice\":\"10.00\",\"quantity\":1}]}"
}

成功

{
  "status": "success",
  "data": {
    "status": "success"
  }
}

失败

{
  "status": "failed",
  "ErroMsg": "Payment failed",
  "data": {
    "status": "failed",
    "ErroMsg": "Payment failed"
  }
}

签名算法(Signature)

将所有请求参数按字母顺序排序

转为 JSON 字符串

使用 HMAC-SHA256 + API Key 生成签名

将签名放入请求头 X-Signature