V2TradeFeecalcRequestDemo.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  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/V2TradeFeecalcRequest.php";
  12. use BsPaySdk\core\BsPayClient;
  13. use BsPaySdk\request\V2TradeFeecalcRequest;
  14. // 2.组装请求参数
  15. $request = new V2TradeFeecalcRequest();
  16. // 商户号
  17. $request->setHuifuId("6666000116584429");
  18. // 请求日期
  19. $request->setReqDate(date("Ymd"));
  20. // 请求流水号
  21. $request->setReqSeqId(date("YmdHis").mt_rand());
  22. // 交易类型
  23. $request->setTradeType("ENCASHMENT");
  24. // 交易金额
  25. $request->setTransAmt("1000.00");
  26. // 设置非必填字段
  27. $extendInfoMap = getExtendInfos();
  28. $request->setExtendInfo($extendInfoMap);
  29. // 3. 发起API调用
  30. $client = new BsPayClient();
  31. $result = $client->postRequest($request);
  32. if (!$result || $result->isError()) { //失败处理
  33. var_dump($result -> getErrorInfo());
  34. } else { //成功处理
  35. var_dump($result);
  36. }
  37. /**
  38. * 非必填字段
  39. *
  40. */
  41. function getExtendInfos() {
  42. // 设置非必填字段
  43. $extendInfoMap = array();
  44. // 网银交易类型
  45. $extendInfoMap["online_trans_type"]= "";
  46. // 付款方银行编号
  47. $extendInfoMap["bank_id"]= "01020000";
  48. // 卡类型
  49. $extendInfoMap["card_type"]= "D";
  50. // 渠道号
  51. $extendInfoMap["channel_no"]= "10000001";
  52. // 数字货币银行编号
  53. $extendInfoMap["digital_bank_no"]= "01002";
  54. // 取现到账类型
  55. $extendInfoMap["encash_type"]= "T0";
  56. // 场景类型
  57. $extendInfoMap["pay_scene"]= "01";
  58. return $extendInfoMap;
  59. }