micropay-alipay-encry.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <?php
  2. /**
  3. * 被扫交易示例 - 支付宝 - 请求报文加密码
  4. */
  5. require_once '../../vendor/autoload.php';
  6. $config = new \Lakala\OpenAPISDK\V3\Configuration();
  7. $tradeLocationInfo = new \Lakala\OpenAPISDK\V3\Model\TradeLocationInfo('106.37.232.115');
  8. /**
  9. * 被扫交易Api
  10. *
  11. * @config 配置文件
  12. * @useSM4ForRequestBody 请求体用sm4加密码
  13. */
  14. $api = new \Lakala\OpenAPISDK\V3\Api\TransMicropayApi($config, \Lakala\OpenAPISDK\V3\Api\EncryptMode::REQUEST);
  15. // 被扫交易参数
  16. $request = new \Lakala\OpenAPISDK\V3\Model\TransMicropayRequest();
  17. // 必填参数
  18. $request->setMerchantNo('822290070111135');
  19. $request->setTermNo('29034705');
  20. $request->setOutTradeNo(date('YmdHis', time()));
  21. $request->setAuthCode('ALIPAY');
  22. $request->setTotalAmount('10000'); // 单位分
  23. $request->setLocationInfo($tradeLocationInfo);
  24. // 非必填参数
  25. $request->setBusiMode('');
  26. $request->setSubject('');
  27. $request->setPayOrderNo('');
  28. $request->setNotifyUrl('');
  29. $request->setSettleType('');
  30. $request->setRemark('');
  31. $request->setScanType('');
  32. $request->setPromoInfo('');
  33. $request->setOutOrderNo('');
  34. $request->setPnrInsIdCd('');
  35. // 支付宝被扫场景 - 账户端业务信息
  36. $acc_busi_fields = new \Lakala\OpenAPISDK\V3\Model\TradeMicropayAlipayAccBusiFields();
  37. $acc_busi_fields->setBusinessParams('');
  38. $acc_busi_fields->setStoreId('');
  39. $acc_busi_fields->setTimeoutExpress('');
  40. $acc_busi_fields->setDisablePayChannels('');
  41. $acc_busi_fields->setBusinessParams('');
  42. $acc_busi_fields->setMinAge('');
  43. $extend_params = new \Lakala\OpenAPISDK\V3\Model\TradeMicropayAlipayExtendParams();
  44. $extend_params->setSysServiceProviderId('');
  45. $extend_params->setHbFqNum('');
  46. $extend_params->setHbFqSellerPercent('');
  47. $acc_busi_fields->setExtendParams($extend_params);
  48. $goods_detail = new \Lakala\OpenAPISDK\V3\Model\TradeMicropayAlipayGoodsDetail();
  49. $goods_detail->setGoodsId('1042e1e1e');
  50. $goods_detail->setAlipayGoodsId('');
  51. $goods_detail->setGoodsName('');
  52. $goods_detail->setQuantity('');
  53. $goods_detail->setPrice('');
  54. $goods_detail->setGoodsCategory('');
  55. $goods_detail->setCategoriesTree('');
  56. $goods_detail->setBody('');
  57. $goods_detail->setShowUrl('');
  58. $acc_busi_fields->setGoodsDetail([$goods_detail]);
  59. // 账户端业务信息
  60. $request->setAccBusiFields($acc_busi_fields);
  61. try {
  62. $response = $api->transMicropay($request);
  63. if ($response->getRespData()) {
  64. print_r($response->getRespData());
  65. print_r($response->getAccRespFields());
  66. }
  67. else {
  68. print_r($response);
  69. }
  70. echo $response->getCode() . "\n";
  71. # 响应头信息
  72. print_r($response->getHeaders());
  73. # 响应原文
  74. echo $response->getOriginalText();
  75. } catch (\Lakala\OpenAPISDK\V3\ApiException $e) {
  76. echo $e->getMessage();
  77. }