Skip to content

WEB预签约

该方式适用于PC等使用浏览器的设备场景使用微信签约扣款。商户在网站后端通过微信支付WEB签约接口获取到签约链接,在网站前端将签约链接生成二维码,引导用户扫码识别该链接,用户访问该链接进入代扣签约页面;用户签约完成后留在微信。WEB 端等待签约回调通知,或者定时轮询查询用户签约状态,更新页面内容。

请求参数类型描述
base_uristring声明接入点https://apihk.mch.weixin.qq.com/(香港接入)
jsonobject声明请求的JSON数据结构
appidstring机构APPID
sub_mchidstring子商户号
sp_appidstring机构appid
sp_mchidstring机构商户号
sub_appidstring子商户应用ID
plan_idinteger模板ID
out_contract_codestring商户侧签约协议号
user_display_namestring用户账户展示名称
success_notify_urlstring签约成功通知url
expired_timestring过期时间
php
$instance->v3->global->papay->contracts->webPreEntrustSign->postAsync([
  'base_uri' => 'https://apihk.mch.weixin.qq.com/', // 接入点(香港接入)
  'json' => [
    'appid'              => 'wxd678efh567hg6787',
    'sub_mchid'          => '1230000109',
    'sp_appid'           => 'wx8888888888888888',
    'sp_mchid'           => '3200000001',
    'sub_appid'          => 'wxcbda96de0b165484',
    'plan_id'            => 123,
    'out_contract_code'  => '100001256',
    'user_display_name'  => '张三',
    'success_notify_url' => 'https://pay.weixin.qq.com',
    'expired_time'       => '2021-11-20T13:29:35+08:00',
  ],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
  print_r(json_decode((string) $response->getBody(), true));
})
->wait();
php
$instance->chain('v3/global/papay/contracts/web-pre-entrust-sign')->postAsync([
  'base_uri' => 'https://apihk.mch.weixin.qq.com/', // 接入点(香港接入)
  'json' => [
    'appid'              => 'wxd678efh567hg6787',
    'sub_mchid'          => '1230000109',
    'sp_appid'           => 'wx8888888888888888',
    'sp_mchid'           => '3200000001',
    'sub_appid'          => 'wxcbda96de0b165484',
    'plan_id'            => 123,
    'out_contract_code'  => '100001256',
    'user_display_name'  => '张三',
    'success_notify_url' => 'https://pay.weixin.qq.com',
    'expired_time'       => '2021-11-20T13:29:35+08:00',
  ],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
  print_r(json_decode((string) $response->getBody(), true));
})
->wait();
php
$instance['v3/global/papay/contracts/web-pre-entrust-sign']->postAsync([
  'base_uri' => 'https://apihk.mch.weixin.qq.com/', // 接入点(香港接入)
  'json' => [
    'appid'              => 'wxd678efh567hg6787',
    'sub_mchid'          => '1230000109',
    'sp_appid'           => 'wx8888888888888888',
    'sp_mchid'           => '3200000001',
    'sub_appid'          => 'wxcbda96de0b165484',
    'plan_id'            => 123,
    'out_contract_code'  => '100001256',
    'user_display_name'  => '张三',
    'success_notify_url' => 'https://pay.weixin.qq.com',
    'expired_time'       => '2021-11-20T13:29:35+08:00',
  ],
])
->then(static function(\Psr\Http\Message\ResponseInterface $response) {
  print_r(json_decode((string) $response->getBody(), true));
})
->wait();
php
$response = $instance->v3->global->papay->contracts->webPreEntrustSign->post([
  'base_uri' => 'https://apihk.mch.weixin.qq.com/', // 接入点(香港接入)
  'json' => [
    'appid'              => 'wxd678efh567hg6787',
    'sub_mchid'          => '1230000109',
    'sp_appid'           => 'wx8888888888888888',
    'sp_mchid'           => '3200000001',
    'sub_appid'          => 'wxcbda96de0b165484',
    'plan_id'            => 123,
    'out_contract_code'  => '100001256',
    'user_display_name'  => '张三',
    'success_notify_url' => 'https://pay.weixin.qq.com',
    'expired_time'       => '2021-11-20T13:29:35+08:00',
  ],
]);
print_r(json_decode((string) $response->getBody(), true));
php
$response = $instance->chain('v3/global/papay/contracts/web-pre-entrust-sign')->post([
  'base_uri' => 'https://apihk.mch.weixin.qq.com/', // 接入点(香港接入)
  'json' => [
    'appid'              => 'wxd678efh567hg6787',
    'sub_mchid'          => '1230000109',
    'sp_appid'           => 'wx8888888888888888',
    'sp_mchid'           => '3200000001',
    'sub_appid'          => 'wxcbda96de0b165484',
    'plan_id'            => 123,
    'out_contract_code'  => '100001256',
    'user_display_name'  => '张三',
    'success_notify_url' => 'https://pay.weixin.qq.com',
    'expired_time'       => '2021-11-20T13:29:35+08:00',
  ],
]);
print_r(json_decode((string) $response->getBody(), true));
php
$response = $instance['v3/global/papay/contracts/web-pre-entrust-sign']->post([
  'base_uri' => 'https://apihk.mch.weixin.qq.com/', // 接入点(香港接入)
  'json' => [
    'appid'              => 'wxd678efh567hg6787',
    'sub_mchid'          => '1230000109',
    'sp_appid'           => 'wx8888888888888888',
    'sp_mchid'           => '3200000001',
    'sub_appid'          => 'wxcbda96de0b165484',
    'plan_id'            => 123,
    'out_contract_code'  => '100001256',
    'user_display_name'  => '张三',
    'success_notify_url' => 'https://pay.weixin.qq.com',
    'expired_time'       => '2021-11-20T13:29:35+08:00',
  ],
]);
print_r(json_decode((string) $response->getBody(), true));
返回字典类型描述
sign_urlstring签约跳转URL

参阅 官方文档

Published on the GitHub by TheNorthMemory