V2MerchantBasicdataModifyRequestDemo.php 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258
  1. <?php
  2. /**
  3. * 商户基本信息修改(2022) - 示例
  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/V2MerchantBasicdataModifyRequest.php";
  12. use BsPaySdk\core\BsPayClient;
  13. use BsPaySdk\request\V2MerchantBasicdataModifyRequest;
  14. // 2.组装请求参数
  15. $request = new V2MerchantBasicdataModifyRequest();
  16. // 请求流水号
  17. $request->setReqSeqId(date("YmdHis").mt_rand());
  18. // 请求日期
  19. $request->setReqDate(date("Ymd"));
  20. // 上级主体ID
  21. $request->setUpperHuifuId("6666000021000000");
  22. // 汇付客户Id
  23. $request->setHuifuId("6666000107932702");
  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["short_name"]= "尼博网络";
  44. // 营业执照类型
  45. // $extendInfoMap["license_type"]= "";
  46. // 营业执照有效期类型
  47. $extendInfoMap["license_validity_type"]= "0";
  48. // 营业执照有效期开始日期
  49. $extendInfoMap["license_begin_date"]= "20200814";
  50. // 营业执照有效期截止日期
  51. $extendInfoMap["license_end_date"]= "20400813";
  52. // 注册省
  53. $extendInfoMap["reg_prov_id"]= "310000";
  54. // 注册市
  55. $extendInfoMap["reg_area_id"]= "310100";
  56. // 注册区
  57. $extendInfoMap["reg_district_id"]= "310120";
  58. // 注册详细地址
  59. $extendInfoMap["reg_detail"]= "台州市宜山路700解放2路715";
  60. // 法人姓名
  61. $extendInfoMap["legal_name"]= "沈荣";
  62. // 法人证件类型
  63. $extendInfoMap["legal_cert_type"]= "00";
  64. // 法人证件号码
  65. $extendInfoMap["legal_cert_no"]= "320923199111206319";
  66. // 法人证件有效期类型
  67. $extendInfoMap["legal_cert_validity_type"]= "0";
  68. // 法人证件有效期开始日期
  69. $extendInfoMap["legal_cert_begin_date"]= "20200814";
  70. // 法人证件有效期截止日期
  71. $extendInfoMap["legal_cert_end_date"]= "20400813";
  72. // 经营省
  73. $extendInfoMap["prov_id"]= "310000";
  74. // 经营市
  75. $extendInfoMap["area_id"]= "310100";
  76. // 经营区
  77. $extendInfoMap["district_id"]= "310105";
  78. // 经营详细地址
  79. $extendInfoMap["detail_addr"]= "徐州市徐汇区宜山路7497号";
  80. // 联系人姓名
  81. $extendInfoMap["contact_name"]= "我是联系人";
  82. // 联系人手机号
  83. $extendInfoMap["contact_mobile_no"]= "15556622331";
  84. // 联系人电子邮箱
  85. $extendInfoMap["contact_email"]= "mei.zhang@huifu.com";
  86. // 客服电话
  87. $extendInfoMap["service_phone"]= "15556622368";
  88. // 小票名称
  89. $extendInfoMap["receipt_name"]= "小票上的名称";
  90. // 所属行业(MCC)
  91. $extendInfoMap["mcc"]= "5411";
  92. // 结算卡信息配置
  93. $extendInfoMap["card_info"]= getCardInfo();
  94. // 取现信息配置
  95. $extendInfoMap["cash_config"]= getCashConfig();
  96. // 结算规则配置
  97. $extendInfoMap["settle_config"]= getSettleConfig();
  98. // 异步通知地址
  99. $extendInfoMap["async_return_url"]= "archer://C_SSPM_NSPOSM_BUSIRESULT";
  100. // D1结算协议图片文件
  101. // $extendInfoMap["settle_agree_pic"]= "";
  102. // 商户英文名称
  103. // $extendInfoMap["mer_en_name"]= "";
  104. // 商户主页URL
  105. // $extendInfoMap["mer_url"]= "";
  106. // 商户ICP备案编号
  107. // $extendInfoMap["mer_icp"]= "";
  108. // 基本存款账户编号或核准号
  109. // $extendInfoMap["open_licence_no"]= "";
  110. // 签约人
  111. // $extendInfoMap["sign_user_info"]= getSignUserInfo();
  112. // 营业执照图片
  113. // $extendInfoMap["license_pic"]= "";
  114. // 授权委托书
  115. // $extendInfoMap["auth_enturst_pic"]= "";
  116. // 组织机构代码证
  117. // $extendInfoMap["org_code_pic"]= "";
  118. // 税务登记证
  119. // $extendInfoMap["tax_reg_pic"]= "";
  120. return $extendInfoMap;
  121. }
  122. function getCardInfo() {
  123. $dto = array();
  124. // 结算账户类型
  125. $dto["card_type"] = "0";
  126. // 结算账户名
  127. $dto["card_name"] = "上海尼博网络科技有限公司";
  128. // 结算账号
  129. $dto["card_no"] = "1001265009300682579";
  130. // 银行所在省参考[地区编码](https://paas.huifu.com/partners/api/#/csfl/api_csfl_dqbm);&lt;font color&#x3D;&quot;green&quot;&gt;示例值:310000 &lt;/font&gt;;如修改省市要级联修改&lt;br/&gt;当card_type&#x3D;0时非必填, 当card_type&#x3D;1或2时必填
  131. $dto["prov_id"] = "310000";
  132. // 银行所在市参考[地区编码](https://paas.huifu.com/partners/api/#/csfl/api_csfl_dqbm);&lt;font color&#x3D;&quot;green&quot;&gt;示例值:310100 &lt;/font&gt;;如修改省市要级联修改&lt;br/&gt;当card_type&#x3D;0时非必填, 当card_type&#x3D;1或2时必填
  133. $dto["area_id"] = "310100";
  134. // 支行联行号参考:[银行支行编码](https://paas.huifu.com/partners/api/#/csfl/api_csfl_yhzhbm) 当card_type&#x3D;0时必填, 当card_type&#x3D;1或2时非必填 &lt;font color&#x3D;&quot;green&quot;&gt;示例值:102290026507&lt;/font&gt;
  135. $dto["branch_code"] = "102290026507";
  136. // 持卡人证件类型持卡人证件类型,参见《[自然人证件类型](https://paas.huifu.com/partners/api/#/api_ggcsbm?id&#x3D;%e8%87%aa%e7%84%b6%e4%ba%ba%e8%af%81%e4%bb%b6%e7%b1%bb%e5%9e%8b)》。&lt;br/&gt; 当card_type&#x3D;0时为空, 当card_type&#x3D;1或2时必填; &lt;font color&#x3D;&quot;green&quot;&gt;示例值:00&lt;/font&gt;
  137. $dto["cert_type"] = "00";
  138. // 持卡人证件有效期类型0:非长期有效, 1:长期有效, &lt;font color&#x3D;&quot;green&quot;&gt;示例值:0&lt;/font&gt;&lt;br/&gt;当card_type&#x3D;0时为空; 当card_type&#x3D;1或2时必填;
  139. $dto["cert_validity_type"] = "0";
  140. // 持卡人证件有效期开始日期日期格式:yyyyMMdd,以北京时间为准; 当card_type&#x3D;0时为空, 当card_type&#x3D;1或2时必填, &lt;font color&#x3D;&quot;green&quot;&gt;示例值:20220125 &lt;/font&gt;
  141. $dto["cert_begin_date"] = "20180106";
  142. // 持卡人证件有效期截止日期日期格式:yyyyMMdd,以北京时间为准。&lt;font color&#x3D;&quot;green&quot;&gt;示例值:20220125&lt;/font&gt;&lt;br/&gt; 当cert_validity_type&#x3D;0时必填;当cert_validity_type&#x3D;1时为空
  143. $dto["cert_end_date"] = "20380106";
  144. // 开户许可证开户许可证图片文件,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F08;&lt;br/&gt;企业商户需要,结算账号为对公账户,且开通全域资金管理必填;&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  145. $dto["reg_acct_pic"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  146. // 法人身份证正面法人身份证正面图片文件,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F02;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529 &lt;/font&gt;
  147. $dto["legal_cert_front_pic"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  148. // 法人身份证反面法人身份证反面图片文件,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F03;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  149. $dto["legal_cert_back_pic"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  150. // 公司照片一公司照片一图片文件,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F22(店铺门头照);&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  151. $dto["comp_pic1"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  152. // 公司照片二公司照片二图片文件,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F24(店铺内景照);&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  153. $dto["comp_pic2"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  154. // 公司照片三公司照片三图片文件,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F105(店铺收银台或前台);&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  155. $dto["comp_pic3"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  156. // 结算卡正面结算卡正面图片文件对私结算必填,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F13;&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  157. $dto["settle_card_front_pic"] = "1277-85c6-3177-ac3d-a8be47b9ae9d";
  158. // 结算卡反面结算卡反面图片文件对私结算必填,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F14;&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  159. $dto["settle_card_back_pic"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  160. // 结算人身份证正面结算人身份证正面图片文件对私结算必填,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F55;&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529&lt;/font&gt;
  161. $dto["settle_cert_front_pic"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  162. // 结算人身份证反面结算人身份证反面图片文件对私结算必填,请填写图片file_id,可通过 [商户图片上传](https://paas.huifu.com/partners/api/#/shgl/shjj/api_shjj_shtpsc) 接口获取,文件类型F56;&lt;br/&gt;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:57cc7f00-600a-33ab-b614-6221bbf2e529 &lt;/font&gt;
  163. $dto["settle_cert_back_pic"] = "d1451277-85c6-3177-ac3d-a8be47b9ae9d";
  164. // 银行编码
  165. $dto["bank_code"] = "01020000";
  166. // 开户支行名称
  167. $dto["branch_name"] = "中国工商银行股份有限公司上海市中山北路支行";
  168. // 持卡人证件号码
  169. $dto["cert_no"] = "320923199111206319";
  170. // 结算人手机号
  171. $dto["mp"] = "18221987178";
  172. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  173. }
  174. function getCashConfig() {
  175. $dto = array();
  176. // 状态
  177. $dto["switch_state"] = "1";
  178. // 取现手续费率(%)fix_amt与fee_rat至少填写一项,单位%,需保留小数点后两位,取值范围[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
  179. $dto["fee_rate"] = "5.50";
  180. // 业务类型
  181. $dto["cash_type"] = "D0";
  182. // 提现手续费(固定/元)
  183. $dto["fix_amt"] = "4.00";
  184. // 是否交易手续费外扣
  185. // $dto["out_fee_flag"] = "";
  186. // 手续费承担方
  187. // $dto["out_fee_huifu_id"] = "";
  188. // 手续费外扣的账户类型
  189. // $dto["out_fee_acct_type"] = "";
  190. $dtoList = array();
  191. array_push($dtoList, $dto);
  192. return json_encode($dtoList,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  193. }
  194. function getSettleConfig() {
  195. $dto = array();
  196. // 结算开关
  197. $dto["settle_status"] = "1";
  198. // 结算周期
  199. $dto["settle_cycle"] = "T1";
  200. // 结算手续费外扣商户号结算手续费外扣商户号,填写承担手续费的汇付商户号;当out_settle_flag&#x3D;1时必填,否则非必填;&lt;font color&#x3D;&quot;green&quot;&gt;示例值:6666000123123123 &lt;/font&gt;
  201. $dto["out_settle_huifuid"] = "6666000003078904";
  202. // 起结金额
  203. $dto["min_amt"] = "3.00";
  204. // 留存金额
  205. $dto["remained_amt"] = "22.00";
  206. // 结算摘要
  207. $dto["settle_abstract"] = "我这里显示结算摘要";
  208. // 手续费外扣标记
  209. $dto["out_settle_flag"] = "2";
  210. // 结算手续费外扣时的账户类型
  211. $dto["out_settle_acct_type"] = "";
  212. // 节假日结算手续费率
  213. $dto["fixed_ratio"] = "2.00";
  214. // 结算批次号
  215. // $dto["settle_batch_no"] = "";
  216. // 结算方式
  217. // $dto["settle_pattern"] = "";
  218. // 是否优先到账
  219. // $dto["is_priority_receipt"] = "";
  220. // 自定义结算处理时间
  221. // $dto["settle_time"] = "";
  222. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  223. }
  224. function getSignUserInfo() {
  225. $dto = array();
  226. // 签约人类型
  227. // $dto["type"] = "test";
  228. // 姓名
  229. // $dto["name"] = "";
  230. // 手机号
  231. // $dto["mobile_no"] = "";
  232. // 身份证
  233. // $dto["cert_no"] = "";
  234. // 身份证照片-人像面
  235. // $dto["identity_front_file_id"] = "";
  236. // 身份证照片-国徽面
  237. // $dto["identity_back_file_id"] = "";
  238. // 法人授权书
  239. // $dto["auth_file_id"] = "";
  240. return json_encode($dto,JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
  241. }