V2UserBusiModifyRequestDemo.php 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  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/V2UserBusiModifyRequest.php";
  12. use BsPaySdk\core\BsPayClient;
  13. use BsPaySdk\request\V2UserBusiModifyRequest;
  14. // 2.组装请求参数
  15. $request = new V2UserBusiModifyRequest();
  16. // 请求流水号
  17. $request->setReqSeqId(date("YmdHis").mt_rand());
  18. // 请求日期
  19. $request->setReqDate(date("Ymd"));
  20. // 渠道商汇付Id
  21. $request->setUpperHuifuId("6666000104633228");
  22. // 汇付ID
  23. $request->setHuifuId("6666000104896342");
  24. // 设置非必填字段
  25. $extendInfoMap = getExtendInfos();
  26. $request->setExtendInfo($extendInfoMap);
  27. // 3. 发起API调用
  28. $client = new BsPayClient();
  29. $result = $client->postRequest($request);
  30. if (!$result || $result->isError()) { //失败处理
  31. var_dump($result -> getErrorInfo());
  32. } else { //成功处理
  33. var_dump($result);
  34. }
  35. /**
  36. * 非必填字段
  37. *
  38. */
  39. function getExtendInfos() {
  40. // 设置非必填字段
  41. $extendInfoMap = array();
  42. // 结算信息配置
  43. $extendInfoMap["settle_config"]= getSettleConfig();
  44. // 结算卡信息
  45. $extendInfoMap["card_info"]= getCardInfo();
  46. // 取现配置列表
  47. $extendInfoMap["cash_config"]= getCashConfig();
  48. // 文件列表
  49. $extendInfoMap["file_list"]= getFileList();
  50. // 延迟入账开关
  51. // $extendInfoMap["delay_flag"]= "";
  52. // 异步请求地址
  53. $extendInfoMap["async_return_url"]= "//http://service.example.com/to/path";
  54. return $extendInfoMap;
  55. }
  56. function getSettleConfig() {
  57. $dto = array();
  58. // 开通状态
  59. $dto["settle_status"] = "1";
  60. // 结算周期
  61. $dto["settle_cycle"] = "D1";
  62. // 结算批次号settle_pattern为P0时选填;&lt;br/&gt;0点昨日余额结算批次:0,&lt;/br&gt;1点余额结算批次:100,&lt;/br&gt;2点余额结算批次:200,&lt;/br&gt;3点余额结算批次:300,&lt;/br&gt;4点余额结算批次:400,&lt;/br&gt;5点余额结算批次:500,&lt;/br&gt;6点余额结算批次:600,&lt;/br&gt;7点余额结算批次:700,&lt;/br&gt;8点余额结算批次:800,&lt;/br&gt;9点余额结算批次:900,&lt;/br&gt;10点余额结算批次:1000,&lt;/br&gt;11点余额结算批次:1100,&lt;/br&gt;12点余额结算批次:1200&lt;/br&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:1000&lt;/font&gt;
  63. $dto["settle_batch_no"] = "0";
  64. // 是否优先到账settle_pattern为P0时选填, Y:是 N:否(为空默认取值);&lt;font color&#x3D;&quot;green&quot;&gt;示例值:Y&lt;/font&gt;
  65. $dto["is_priority_receipt"] = "Y";
  66. // 自定义结算处理时间settle_pattern为P1时必填, 格式:HHmmss;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:103000&lt;/font&gt;
  67. $dto["settle_time"] = "";
  68. // 节假日结算手续费率(%)
  69. $dto["fixed_ratio"] = "0.1";
  70. // 起结金额
  71. $dto["min_amt"] = "0.1";
  72. // 结算手续费外扣时的账户类型
  73. $dto["out_settle_acct_type"] = "05";
  74. // 手续费外扣标记
  75. $dto["out_settle_flag"] = "1";
  76. // 结算手续费外扣时的汇付ID
  77. $dto["out_settle_huifuid"] = "6666000104633228";
  78. // 留存金额
  79. $dto["remained_amt"] = "0.1";
  80. // 结算摘要
  81. $dto["settle_abstract"] = "吃吃";
  82. // 结算方式
  83. $dto["settle_pattern"] = "P0";
  84. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  85. }
  86. function getCardInfo() {
  87. $dto = array();
  88. // 结算类型
  89. $dto["card_type"] = "0";
  90. // 卡户名
  91. $dto["card_name"] = "陈立一";
  92. // 卡号
  93. $dto["card_no"] = "6217001210064762000";
  94. // 银行所在省
  95. $dto["prov_id"] = "310000";
  96. // 银行所在市
  97. $dto["area_id"] = "310100";
  98. // 银行号对公时必填,对私可以为空;[参见银行编码](https://paas.huifu.com/partners/api/#/csfl/api_csfl_yhbm);&lt;font color&#x3D;&quot;green&quot;&gt;示例值:01020000&lt;/font&gt;
  99. $dto["bank_code"] = "01050000";
  100. // 支行联行号对公时联行号、支行名称二选一必填,[点击查看](https://paas.huifu.com/partners/api/#/csfl/api_csfl_yhzhbm);&lt;font color&#x3D;&quot;green&quot;&gt;示例值:102290026507&lt;/font&gt;
  101. $dto["branch_code"] = "105305264815";
  102. // 支行名称对公时联行号、支行名称二选一必填,&lt;font color&#x3D;&quot;green&quot;&gt;示例值:中国工商银行上海市中山北路支行&lt;/font&gt;
  103. $dto["branch_name"] = "中国建设银行股份有限公司上海平凉路支行";
  104. // 持卡人证件类型
  105. $dto["cert_type"] = "00";
  106. // 持卡人证件号码
  107. $dto["cert_no"] = "110101197003077000";
  108. // 持卡人证件有效期类型
  109. $dto["cert_validity_type"] = "0";
  110. // 持卡人证件有效期起始日期
  111. $dto["cert_begin_date"] = "20210806";
  112. // 持卡人证件有效期截止日期
  113. $dto["cert_end_date"] = "20410806";
  114. // 银行卡绑定手机号
  115. $dto["mp"] = "15556622000";
  116. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  117. }
  118. function getCashConfig() {
  119. $dto = array();
  120. // 开通状态
  121. $dto["switch_state"] = "1";
  122. // 取现手续费率(%)fix_amt与fee_rate至少填写一项,单位%,需保留小数点后两位,取值范围[0.00,100.00],不收费请填写0.00;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:0.05&lt;/font&gt;&lt;br/&gt;注:如果fix_amt与fee_rate都填写了则手续费&#x3D;fix_amt+支付金额\*fee_rate
  123. $dto["fee_rate"] = "0.05";
  124. // 业务类型
  125. $dto["cash_type"] = "D0";
  126. // 提现手续费(固定/元)
  127. $dto["fix_amt"] = "3";
  128. // 是否交易手续费外扣
  129. $dto["out_fee_flag"] = "1";
  130. // 手续费承担方
  131. $dto["out_fee_huifu_id"] = "6666000104633228";
  132. // 交易手续费外扣的账户类型
  133. $dto["out_fee_acct_type"] = "05";
  134. $dtoList = array();
  135. array_push($dtoList, $dto);
  136. return json_encode($dtoList,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  137. }
  138. function getFileList() {
  139. $dto = array();
  140. // 文件类型
  141. $dto["file_type"] = "F02";
  142. // 文件jfileID
  143. $dto["file_id"] = "99e00421-dad7-3334-9538-4f2ad10612d5";
  144. // 文件名称
  145. $dto["file_name"] = "企业营业执照1.jpg";
  146. $dtoList = array();
  147. array_push($dtoList, $dto);
  148. return json_encode($dtoList,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  149. }