主页 > 支付业态 >

网站第三方在线支付系统接口怎么搭建配置?能提供哪些支付方式

网站第三方在线支付方式及系统搭建介绍

日期: 2020-02-13 18:29:42 整理编辑: 羲芝来源: 网站网友

一、网站第三方支付接口搭建配置方法

日常我们都会经常用到移动支付,很多APP会选择调用第三方支付作为支付方式,或者是用户使用移动支付应用,如微信支付或者支付宝支付。

(网站接入支付!就去优易个人免签支付平台)

微信支付

支付流程看起来挺简单,打开微信,扫一扫/APP调用微信,输入密码/按个指纹就ok了。

正常来说,使用指纹支付的时候,用户只需要按三次就可以完成支付;

点击“立即支付”,点击“确认支付”,按指纹 ;

第一个页面是生成支付订单,需要告诉用户订单名称,订单编号,支付金额和收款方 ;

细节1:考虑要提供给用户的什么信息,也就是订单信息上写什么 ;

细节2:此刻点击“取消”按钮,并不会直接退出支付,中间会弹出阻断信息,询问用户是否确认取消支付。我是这么考虑,第一,用户可能会误点,如果是误点,对于再次提交支付在心理上有一定打击;第二,用户在犹豫,可以犹豫的事情应该设置一个阻断信息。

第二个页面支付确认弹窗。这里只有收款方,支付金额和支付方式(扣款方) ;

选择一:选择支付方式 ;

选择二:指纹支付/使用密码;

在这里我是已经开通了指纹支付。在进入支付确认页面的时候还要判断用户是否开通指纹支付,开通指纹支付弹出指纹支付页面,未开通弹出密码支付页面。这里不需要用户选择。用户未开通支付方式的情况,可以在用户支付完成后提示用户开通指纹支付。

这个页面需要用户选择的是支付方式,微信会提供默认的支付方式。用户.需要变更支付方式的时候,可以点击修改。

变更支付方式有可能是默认支付方式不够钱,或者用户不想用这个方式支付。解决办法可以是换个支付方式,或者绑定新卡,也可以使用支付宝,只是微信是不会引导用户转投支付宝的。

微信支付这里设置的只有一个页面,后面两个都是弹窗。

用户在使用密码支付的时候,输入六位数的密码后不需要按确认。

对于设计支付流程需要考虑的问题:

需要提供用户什么信息?

第三方支付

支付来源。提供什么样的支付方式给用户选择:(网站接入支付!就去U易个人免签支付平台)

支付确认方式,密码和指纹。指纹支付是比密码支付快捷的,需要考虑是否提示用户开通指纹支付,这里又要考虑用户的硬件设备是否支持。这里可以检测用户机型,然后选择是否发出提示,支付过程中是不适合提示,所以要在支付后,提示应该只是提示一次。同时应该告诉用户取消之后在哪里可以自行开通。

在顺利的支付过程中不需要用户点击除确认外的其他按钮,并且步骤尽量少。

密码和指纹错误次数的限制。如果用户多次输入错误密码和指纹怎么处理。考虑提供找回密码的功能,怎么设置找回密码又是一个需要考虑的问题,既需要考虑到方便,也需要考虑安全

支付过程中提示动画,告诉用户在支付中,和加载中,刷新中等同理,在后台处理,用户等待的时候告诉用户现在是什么情况。

支付成功,支付失败提示等。

支付接口对接技术做多了以后你会发现,基本上所有的第三方第四方支付接口的基本方法流程就是这样,至于有些签名方式不一样,配制参数不一样等等按照其提供的技术文档要求修改一下即可。

 

  1. //配制类,填写在支付平台获取的相关信息 
  2. class Constant { 
  3.     const USER= "QQ4770851"
  4.     const MERCHNO = "ff8080816586cbd434358a66b0bc1525"
  5.     const CREATE_URL = "https://xxx.com/order/create"
  6.     const QUERY_URL = "https://xxx.com/order/query"
  7.     const KEY = "C66604323DFA42B4864299246E04FD1B"
  8.  
  9. //签名类,按照支付平台的规则对参数进行签名 
  10. class SignUtils { 
  11.     /** = */ 
  12.     const QSTRING_EQUAL = "="
  13.     /** & */ 
  14.     const QSTRING_SPLIT = "&"
  15.     public static function signMD5($param$merKey = '') { 
  16.         ksort($param); 
  17.  
  18.         $arr = []; 
  19.         foreach ($param as $key => $value) { 
  20.             $arr[] = $key . self::QSTRING_EQUAL . $value
  21.         } 
  22.         $str = implode(self::QSTRING_SPLIT, $arr); 
  23.         return strtoupper(md5($str . self::QSTRING_SPLIT . $merKey)); 
  24.     } 
  25.  
  26. //请求类,发起支付请求 
  27. class HttpUtils { 
  28.     /** 
  29.      * [post description] 
  30.      * @param  [type] $url  [description] 
  31.      * @param  array  $post [description] 
  32.      * @return [type]       [description] 
  33.      */ 
  34.     public static function post($url$post = []) { 
  35.         $headers = [ "Content-type: application/json;charset='utf-8'""Accept: application/json""Cache-Control: no-cache""Pragma: no-cache" ]; 
  36.         $ch = curl_init($url); 
  37.         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
  38.         curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
  39.         curl_setopt($ch, CURLOPT_TIMEOUT, 60); 
  40.         curl_setopt($ch, CURLOPT_POST, TRUE); 
  41.         curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($post)); 
  42.         curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
  43.         curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
  44.  
  45.         $data = curl_exec($ch);//CURLOPT_RETURNTRANSFER 不设置  curl_exec返回TRUE 设置  curl_exec返回json(此处) 失败都返回FALSE 
  46.         curl_close($ch); 
  47.  
  48.         return $data
  49.     } 
  50.  
  51. // 支付正文开始,配制参数,发起请求 
  52. $param = []; 
  53. $param['merchno'] = Constant::MERCHNO; 
  54. $param['out_trade_no'] = $_POST['rechargeId']; 
  55. $param['subject'] = $_POST['username']; 
  56. $param['total_amount'] = $_POST['amount']; 
  57. $param['redirect_url'] = 'http://'.$_SERVER['HTTP_HOST'].'/return.php'
  58. $param['notify_url'] = 'http://'.$_SERVER['HTTP_HOST'].'/notify.php'
  59. $param['sign'] = SignUtils::signMD5($param, Constant::KEY); 
  60. $response = HttpUtils::post(Constant::CREATE_URL, $param); 
  61. $arr = json_decode($response,TRUE); 
  62. header("location:".$arr['pay_url']); 

二、第三方支付方式介绍

第三方支付目前常见的几种支付方式有:快捷支付、网关支付、余额支付、二维码支付(微信、支付宝)、代付、代扣等。(网站接入支付!就去优易个人免签支付平台)

相关内容

最新发布

推荐内容

热点内容