首页
开发手册
应用中心
工具
用户中心
使用Square平台进行信用卡支付
中文简体
中文简体
English
上一篇
下一篇
#FoundPHP Square 使用 ### PHP Square 简介 Square是一个国外信用卡平台,国外支付方式大多为信用卡支付,该平台适合使用者为国外用户的项目,他还单独提供了财务管理面板,可以进入Square面板进行管理。 `Square 信用卡支付不建议应用于国内项目` ----------- #### 配置参数 ##### demo提供的id和key是测试环境参数,正式使用时请将id、key修改配置(正式环境和测试环境id和key不一样) ```php //配置支付平台 $config['pay']['dev'] = 1;//1 开启测试环境 0正式环境 $config['pay']['type'] = 'square'; $config['pay']['id'] = 'sandbox-sq0idb-dCpasBwaHdKXoZjsw3VCvA'; $config['pay']['location'] = 'Q9A1FNHYD7M50'; $config['pay']['key'] = 'EAAAEPl9Yac8HzDvq6o-sQ0TLPkWDcpFfkVnNRoUKbOMS15K8vm1NYdshbeZ-O_T'; $config['pay']['log_file'] = $RAND_DIR."pay_logs/".dates(time(),"Y-m-d").".txt";//日志记录文件 ``` #### 实例化支付插件 ```php //实例化类 $FoundPHP_pay = load('class/pay/pay','FoundPHP_pay',$config['pay']); ``` ![](https://dev.foundphp.com/data/file/edit/20/04/30/200430_16376957.png) #### 2. 添加客户 ```php //客户信息 $data_ary = array( 'id' => 1, 'first_name' => 'vicky', 'last_name' => 'Zhu', 'email' => '2335097467@qq.com', ); //建立客户 $result = $FoundPHP_pay->create_customer($data_ary); print_R($result); ``` ##### 输出结果 ```php array( 'code' => 1, 'Use' => Create Customer, 'data' => TYJB05H9Y8T4Z04V976BNDSGDC,//square返回的客户id,需保存 ); ``` #### 3. 添加信用卡 使用Square自带的payment form 绑定信用卡 ![](https://dev.foundphp.com/data/file/edit/20/08/12/200812_10268763.png) ###### 测试信用卡参数 |Number|CVV|Verification Code| | ------------ | ------------ | ----------| |4111 1111 1111 1111|111|x| |4310 0000 0020 1019|111|123456| |5105 1051 0510 5100|111|x| |5500 0000 0020 1016|111|123456| |6011 0000 0000 0004|111|x| |6011 0000 0020 1016|111|123456| |3000 0000 0000 04|111|x| |3569 9900 1009 5841|111|x| |3400 000000 00009|1111|x| |3700 000002 01014|1111|123456| |6222 9888 1234 0000|123|x| ##### 拉取payment form表单 > ** 绑定卡在客户上 ** js 和 css 下载地址 css:[绑定卡支付CSS](https://foundphp.com/data/style/js/square/mysqpaymentform.css "绑定卡支付js") 测试环境:[绑定卡支付js](https://foundphp.com/data/style/js/square/paymentform_dev.js "绑定卡支付js") 正式环境:[绑定卡支付js](https://foundphp.com/data/style/js/square/paymentform.js "绑定卡支付js") ```js //引入js和css 正式开发引入 paymentform.js
//payment form的html代码
Bind Card
//js ``` ##### 绑定信用卡提交地址 ```php //信用卡信息 $data_ary = array( 'cusid' => $P['customer_id'],//客户id 'nonce' => $P['nonce'], ); //绑定卡 $result = $FoundPHP_pay->create_card($data_ary); print_R($result); ``` ##### 输出结果 ```php array( 'code' => 1, 'Use' => Create card, 'data' => array( 'card_id' => '信用卡id',//格式:ccof:8WSBoMTj1Muoi****** 'card_brand'=> '信用卡类型', 'last_four' => '信用卡后四位', 'exp_month' => '有效月份', 'exp_year' => '有效年份', ) ); ``` > ** 直接使用卡付款 ** js下载地址 测试环境:[直接卡支付js](https://foundphp.com/data/style/js/square/square_dev.js "直接支付js") 正式环境:[直接卡支付js](https://foundphp.com/data/style/js/square/square.js "直接支付js") ```html //判断正式环境还是测试环境 //载入支付卡基础代码
Pay 0.01
``` #### 4. 删除信用卡 ```php //提交信用卡信息 $data_ary = array( 'customer' => '*****',//客户id 'card_id' => '信用卡id', ); //统一下单 $result = $FoundPHP_pay->del_card($data_ary); print_R($result); ``` ##### 输出结果 ```php array( 'code' => 1,//1 成功 0失败 ); ``` #### 5. 信用卡付款 ```php //提交付款信息 $data_ary = array( 'customer_id' => 'TYJB05H9Y8T4Z04V976BN*****',//客户id 直接使用卡支付可以不传 'card_id' => '信用卡id', 'oid' => '订单号', 'moneys' => '金额(分)' ); //统一下单 $result = $FoundPHP_pay->create_pay($data_ary); print_R($result); ``` ##### 输出结果 ```php array( 'code' => 1, 'Use' => Pay, 'data' => array( 'payment_id' => '付款id',//用于退款 'status'=> '状态',//COMPLETED 完成 FAILED 失败 'receipt_number'=> '状态',//付款收据号码 ) ); ``` #### 6. 信用卡退款 ```php //提交退款信息 $data_ary = array( 'payment_id' => '*****',//付款id 'oid' => '订单号', 'moneys' => '金额(分)' ); //统一下单 $result = $FoundPHP_pay->refund_pay($data_ary); print_R($result); ``` ##### 输出结果 ```php array( 'code' => 1, 'Use' => Refund, 'data' => array( 'refund_id' => '退款id',//用于退款 'status'=> '状态',//PENDING 准备退款 COMPLETED 完成 FAILED 失败 'payment_id'=> '',//付款id ) ); ```