Plus Pay(新钱包-支付工具)

优质
小牛编辑
175浏览
2023-12-01

和用户余额相关的信息,余额单位都是按照 CNY 的「分」作为单位。

新版钱包部分只提供跟真实金额有关的操作,充值相关操作暂只对接ping++支付平台

敏感操作

部分接口将被设置为敏感操作接口,此类接口需要额外传入当前账户密码password作为账户凭据验证

接口

钱包流水

GET /api/v2/plus-pay/orders

可选参数

参数类型说明
limitint可以设置获取数量
afterint获取更多数据,上一次获取列表的最后一条 ID
actionstringincome - 收入 expenses - 支出

响应

Status 200
[
  {
    "id": 1,
    "owner_id": 1,
    "target_type": "user",
    "target_id": "2",
    "title": "转账",
    "body": null,
    "type": -1,
    "amount": 1000,
    "state": 1,
    "created_at": "2018-01-02 02:26:33",
    "updated_at": "2018-01-02 02:26:33"
  },
  {
    "id": 6,
    "owner_id": 1,
    "target_type": "widthdraw",
    "target_id": "0",
    "title": "提现",
    "body": null,
    "type": -1,
    "amount": 1000,
    "state": 1,
    "created_at": "2018-01-02 06:00:58",
    "updated_at": "2018-01-02 06:00:58"
  },
  {
    "id": 19,
    "owner_id": 1,
    "target_type": "recharge_ping_p_p",
    "target_id": "0",
    "title": "充值",
    "body": "余额充值",
    "type": 1,
    "amount": 1000,
    "state": 0,
    "created_at": "2018-01-04 07:29:03",
    "updated_at": "2018-01-04 07:29:03"
  }
]

返回参数

名称类型说明
idint记录id
owner_idint所属者id
target_typestring操作类型 recharge_ping_p_p - 充值, widthdraw - 提现, user - 转账, reward - 打赏
target_idstring账户
titlestring标题
bodystring内容
typeint1 - 收入 -1 - 支出
amountint金额,分单位
stateint订单状态,0: 等待,1:成功,-1: 失败

提现列表

GET /api/v2/plus-pay/cashes

请求参数

参数类型说明
limitint可以设置获取数量
afterint获取更多数据,上一次获取列表的最后一条 ID

Headers

Status: 200 OK

Body

[
  {
  "id": 4, // 提现记录ID
  "value": 10, // 提现金额
  "type": "alipay", // 提现方式
  "account": "xxx@alipay.com", // 提现账户
  "status": 0, // 提现状态, 0 - 待审批,1 - 已审批,2 - 被拒绝
  "remark": null, // 备注,审批或者拒绝的时候由管理填写
  "created_at": "2017-06-01 09:30:22" // 申请时间
  },
  {
  "id": 3,
  "value": 10,
  "type": "wechat",
  "account": "xxxx",
  "status": 0,
  "remark": null,
  "created_at": "2017-06-01 09:29:09"
  }
]

发起提现

POST /api/v2/plus-pay/cashes

请求参数

名称类型描述
valueint用户需要提现的金额
typestring用户提现账户方式
accountstring用户提现账户
{
  "value": 100,
  "type": "alipay"
  "account": "xxx@alipay.com"
}
Headers
Status: 201 Created
Body
{
  "value": [
  "请输入提现金额", // 用户没用输入
  "发送的数据错误", // 发送错误的数据给服务器(非正整数)
  "输入的提现金额不合法", // 发送给服务器小于 1
  "提现金额超出账户余额", // 用户提现金额超出余额
  ],
  "type": [
  "请选择提现方式", // 没有发送提现方式
  "你选择的提现方式不支持" // 提现的方式后台设置不允许提现
  ],
  "account": [
  "请输入你的提现账户" // 没有输入账户
  ],
  "message": [
  "申请提现成功", // 成功
  "申请失败" // 失败
  ]
}

发起充值

接口使用统一的接口对接所有的充值,对接第三发平台为 Ping++,请先阅读 Ping++ 官方文档。

POST /api/v2/plus-pay/recharge

输入

字段必须类型描述
typestring充值方式 (见「启动信息接口」或者「钱包信息」)
amountint用户充值金额,单位为真实货币「分」单位
extraobject,array拓展信息字段,见 支付渠道-extra-参数说明
{
  "type": "alipay_wap",
  "amount": 100, // 表示 1.00
  "extra": {
    "success_url": "https://plus.io/web/recharge" // 这个字段只是示例,这是 支付宝 wap 支付独有参数。
  }
}

响应

Status: 201 Created
{
  "order": {
  "id": 1,
  "owner_id": 1,
  "target_type": "recharge_ping_p_p",
  "target_id": 1,
  "title": "充值",
  "body": "余额充值",
  "type": -1,
  "amount": 500,
  "state": 0,
  "created_at": "2018-01-04 07:29:57",
  "updated_at": "2018-01-04 07:29:57"
  }, // 钱包记录数据信息
  "pingpp_order": { // Ping++ 凭据
  "id": "ch_08anD0a9yjPCLyvbTODqXrnT",
  "object": "charge",
  "created": 1496819712,
  "livemode": false,
  "paid": false,
  "refunded": false,
  "app": "app_5anXP4ezfXvL8m5e",
  "channel": "applepay_upacp",
  "order_no": "a0000000000000000008",
  "client_ip": "127.0.0.1",
  "amount": 500,
  "amount_settle": 500,
  "currency": "cny",
  "subject": "余额充值",
  "body": "账户余额充值",
  "extra": {},
  "time_paid": null,
  "time_expire": 1496906112,
  "time_settle": null,
  "transaction_no": null,
  "refunds": {
    "object": "list",
    "url": "/v1/charges/ch_08anD0a9yjPCLyvbTODqXrnT/refunds",
    "has_more": false,
    "data": []
  },
  "amount_refunded": 0,
  "failure_code": null,
  "failure_msg": null,
  "metadata": {},
  "credential": {
    "object": "credential",
    "applepay_upacp": {
    "tn": "201706071515122891443",
    "mode": "00",
    "merchant_id": "Your app merchant id"
    }
  },
  "description": null
  }
}

Type 场景

name描述
applepay_upacpApple Pay (仅对 iOS 有效)
alipayApp 发起支付宝支付选项
alipay_wap手机网页发起支付宝支付
alipay_pc_directPC 网页发起支付宝支付
alipay_qr支付宝扫码支付,前度生成二维码
wxApp 发起微信支付
wx_wap手机网页发起微信支付

取回凭据

GET /api/v2/plus-pay/orders/{order}

响应

HTTP Status 200
{
  "id": 1,
  "owner_id": 1,
  "target_type": "recharge_ping_p_p",
  "target_id": 1,
  "title": "充值",
  "body": "余额充值",
  "type": -1,
  "amount": 500,
  "state": 0,
  "created_at": "2018-01-04 07:29:57",
  "updated_at": "2018-01-04 07:29:57" 
}

回调通知

POST /api/v2/plus-pay/webhooks

供给ping++平台回调通知调用的接口

转账

POST /api/v2/plus-pay/transfer

输入参数

名称类型说明
userint用户id
amountint转账金额,分单位

响应

Status 201
{
  "message": ['转账成功']
}

转换积分

POST /plus-pay/transform

输入参数

名称类型说明
amountint转账金额,分单位

响应

Status 201
{
  "message": ['操作成功']
}