V2QuickbuckleOnekeyCardbindRequestDemo.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?php
  2. /**
  3. * 一键绑卡 - 示例
  4. *
  5. * @author sdk-generator
  6. * @Description
  7. */
  8. namespace BsPayDemo;
  9. // 1. 资源及配置加载
  10. require_once dirname(__FILE__) . "/loader.php";
  11. require_once dirname(__FILE__). "/../BsPaySdk/request/V2QuickbuckleOnekeyCardbindRequest.php";
  12. use BsPaySdk\core\BsPayClient;
  13. use BsPaySdk\request\V2QuickbuckleOnekeyCardbindRequest;
  14. // 2.组装请求参数
  15. $request = new V2QuickbuckleOnekeyCardbindRequest();
  16. // 请求流水号
  17. $request->setReqSeqId(date("YmdHis").mt_rand());
  18. // 请求时间
  19. $request->setReqDate(date("Ymd"));
  20. // 汇付Id
  21. $request->setHuifuId("6666000003078984");
  22. // 顾客用户号 
  23. $request->setOutCustId("6666000103633619");
  24. // 银行号
  25. $request->setBankId("01030000");
  26. // 银行卡开户姓名 
  27. $request->setCardName("YTRf65hBDkH9UU1AwG16r4Nlc/X1rH6ejKbvmqT80exJ6whdHI1zB+izBtNBOJfhRNbIOhi1FrRuE5b7wnt/03Q+vwWQQLDGJXWZf92yp+eIRDHg8JdbjOgxKvF2q4Qw5704jbsjQm4UJW5fqRhzRPtnnAL9zzTSgVhuQ0KCwc8=");
  28. // 银行卡绑定身份证
  29. $request->setCertId("gk8zqa+zvIUAvzV3Bjzzw+vRgq2LgTzQI8PRoqUdbeuFMbFZ6LllQpcOhWIz6F82VtFBKzLd5kPOaCwlQCiwsXhSqUFB11zgzKUtVIuiv9lHY/EsjRwqDBhgeR5f2H9FXr3wQ9f7bI7t8ca9o93QxrXr/1MDBq7fGok0xu2ytsM=");
  30. // 银行卡绑定证件类型
  31. $request->setCertType("00");
  32. // 证件有效期到期日长期有效不填.格式:yyyyMMdd。&lt;font color&#x3D;&quot;green&quot;&gt;示例值:20311111&lt;/font&gt;
  33. $request->setCertEndDate("20370121");
  34. // 银行卡绑定手机号 
  35. $request->setCardMp("e2zKkJ6PE6UtZhgz42pqgPLQh6p83/WJsG7EVSgYYgN+7MIiCzXnjTpmpv0Cgv7cYTbQTBf/NF5jqeI8BpFjP7C6gg+0cjqW2tgdVxyfqZLu2fEJRth7NgZKgS2ZKbkZ8PNfUk7V+aHbqkAVKY92bdcSQSNIuWaJCeIF34w+l+k=");
  36. // 卡的借贷类型
  37. $request->setDcType("D");
  38. // 异步请求地址
  39. $request->setAsyncReturnUrl("http://192.168.85.157:30031/sspm/testVirgo");
  40. // 设备信息域
  41. $request->setTrxDeviceInf(getTrxDeviceInf());
  42. // 设置非必填字段
  43. $extendInfoMap = getExtendInfos();
  44. $request->setExtendInfo($extendInfoMap);
  45. // 3. 发起API调用
  46. $client = new BsPayClient();
  47. $result = $client->postRequest($request);
  48. if (!$result || $result->isError()) { //失败处理
  49. var_dump($result -> getErrorInfo());
  50. } else { //成功处理
  51. var_dump($result);
  52. }
  53. /**
  54. * 非必填字段
  55. *
  56. */
  57. function getExtendInfos() {
  58. // 设置非必填字段
  59. $extendInfoMap = array();
  60. // 证件有效期类型
  61. $extendInfoMap["cert_validity_type"]= "0";
  62. // 证件有效期起始日
  63. $extendInfoMap["cert_begin_date"]= "20170121";
  64. // 挂网协议编号
  65. $extendInfoMap["protocol_no"]= "";
  66. // 风控信息
  67. // $extendInfoMap["risk_info"]= getRiskInfo();
  68. // 回调页面地址
  69. // $extendInfoMap["verify_front_url"]= "";
  70. return $extendInfoMap;
  71. }
  72. function getRiskInfo() {
  73. $dto = array();
  74. // IP类型
  75. // $dto["ip_type"] = "test";
  76. // IP值
  77. // $dto["source_ip"] = "test";
  78. // 设备标识
  79. // $dto["device_id"] = "";
  80. // 设备类型
  81. // $dto["device_type"] = "";
  82. // 应用提供方账户ID
  83. // $dto["account_id_hash"] = "";
  84. // 银行预留手机号
  85. // $dto["mobile"] = "";
  86. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  87. }
  88. function getTrxDeviceInf() {
  89. $dto = array();
  90. // 银行预留手机号
  91. $dto["trx_mobile_num"] = "15556622368";
  92. // 设备类型
  93. $dto["trx_device_type"] = "1";
  94. // 交易设备IP
  95. $dto["trx_device_ip"] = "10.10.0.1";
  96. // 交易设备MAC
  97. $dto["trx_device_mac"] = "10.10.0.1";
  98. // 交易设备IMEI
  99. $dto["trx_device_imei"] = "030147441006000182623";
  100. // 交易设备IMSI
  101. $dto["trx_device_imsi"] = "030147441006000182623";
  102. // 交易设备ICCID
  103. $dto["trx_device_icc_id"] = "030147441006000182623";
  104. // 交易设备WIFIMAC
  105. $dto["trx_device_wfifi_mac"] = "030147441006000182623";
  106. // 交易设备GPS
  107. $dto["trx_device_gps"] = "030147441006000182623";
  108. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  109. }