public function aliPayTo() { $aliPayConfig = C('aliPayConfig'); $condition['id'] = array('eq', intval($_GET['id'])); $result = $this->payModel->getOrderInfoData($condition); $parameter = array('service' => 'create_direct_pay_by_user', 'payment_type' => '1', 'partner' => trim($aliPayConfig['partner']), '_input_charset' => trim(strtolower($aliPayConfig['input_charset'])), 'seller_email' => trim($aliPayConfig['seller_email']), 'return_url' => trim($aliPayConfig['return_url']), 'notify_url' => trim($aliPayConfig['notify_url']), 'out_trade_no' => $result['order_No'], 'subject' => $result['title_info'], 'body' => $result['remark'], 'total_fee' => $result['price'], 'paymethod' => '', 'defaultbank' => '', 'anti_phishing_key' => '', 'exter_invoke_ip' => '', 'show_url' => 'http://www.xujiantao.com/works/lvsenshop', 'extra_common_param' => '', 'royalty_type' => '', 'royalty_parameters' => ''); $aliPayService = new AlipayService($aliPayConfig); $html_text = $aliPayService->create_direct_pay_by_user($parameter); echo $html_text; }
function aliapytransfer($rechargemoney) { $aliapy_config = (include TIPASK_ROOT . '/data/alipay.config.php'); $tradeid = "u-" . strtolower(random(6)); //构造要请求的参数数组 $parameter = array("service" => "create_direct_pay_by_user", "payment_type" => "1", "partner" => trim($aliapy_config['partner']), "_input_charset" => trim(strtolower($aliapy_config['input_charset'])), "seller_email" => trim($aliapy_config['seller_email']), "return_url" => trim($aliapy_config['return_url']), "notify_url" => trim($aliapy_config['notify_url']), "out_trade_no" => $tradeid, "subject" => '财富充值', "body" => '财富充值', "total_fee" => $rechargemoney, "paymethod" => '', "defaultbank" => '', "anti_phishing_key" => '', "exter_invoke_ip" => '', "show_url" => '', "extra_common_param" => '', "royalty_type" => '', "royalty_parameters" => ''); //构造即时到帐接口 $alipayService = new AlipayService($aliapy_config); $html_text = $alipayService->create_direct_pay_by_user($parameter); echo $html_text; }
function createPay($AppInfo, $PartnerInfo, $ServerInfo, $PassageInfo, $OrderInfo, $Pay) { $comment = json_decode($AppInfo['comment'], true); /* 商户号 */ $partner = $PassageInfo['StagePartnerId']; /* 密钥 */ $key = $PassageInfo['StageSecureCode']; $subject = "购买" . $AppInfo['name'] . $comment['coin_name']; $body = "购买" . $AppInfo['name'] . "-" . $PartnerInfo['name'] . "-" . $ServerInfo['name'] . $OrderInfo['AppCoin'] . $comment['coin_name']; require "AliPayClass/alipayto.php"; //构造纯网关接口 $alipayService = new AlipayService($aliapy_config, $PassageInfo); $params = $alipayService->create_direct_pay_by_user($parameter); return $params; }
/** * 生成支付表单 * @param unknown $orderid * @param unknown $subject * @param unknown $body * @param unknown $total_fee * @return Ambigous <表单提交HTML信息, 提交表单HTML文本, string> */ public static function makePay($orderid, $subject, $body, $total_fee) { if (ENV_SCENE == 'dev') { $total_fee = 0.01; } require_once LIB_PATH . '/Payment/Alipay/alipay_service.class.php'; $alipay_config = Yaf_G::getConf('aliapy_config', null, 'alipay'); $t_paymethod = ''; $t_defaultbank = ''; // 订单ID //$orderid = $this->getParam('id'); // 请与贵网站订单系统中的唯一订单号匹配 //$out_trade_no = $orderid; // $_POST['orderno']; // 订单名称,显示在支付宝收银台里的“商品名称”里,显示在支付宝的交易管理的“商品名称”的列表里。 //$subject = "51wom"; // $_POST['subject']; // 订单描述、订单详细、订单备注,显示在支付宝收银台里的“商品描述”里 //$body = "在线支付"; // @$_POST['body']; // 订单总金额,显示在支付宝收银台里的“应付总额”里 //$total_fee = 0.01; // $_POST['total_fee']; // 默认支付方式,取值见“即时到帐接口”技术文档中的请求参数列表 $paymethod = $t_paymethod; // 默认网银代号,代号列表见“即时到帐接口”技术文档“附录”→“银行列表” $defaultbank = $t_defaultbank; // 防钓鱼时间戳 $anti_phishing_key = ''; // 获取客户端的IP地址,建议:编写获取客户端IP地址的程序 $exter_invoke_ip = ''; // 商品展示地址,要用 http://格式的完整路径,不允许加?id=123这类自定义参数 $show_url = ''; // PageHelper::book2_url(); // 自定义参数,可存放任何内容(除=、&等特殊字符外),不会显示在页面上 $extra_common_param = ''; // 扩展功能参数——分润(若要使用,请按照注释要求的格式赋值) $royalty_type = ""; // 提成类型,该值为固定值:10,不需要修改 $royalty_parameters = ""; // 构造要请求的参数数组 $parameter = array("service" => "create_direct_pay_by_user", "payment_type" => "1", "partner" => trim($alipay_config['partner']), "_input_charset" => trim(strtolower($alipay_config['input_charset'])), "seller_email" => trim($alipay_config['seller_email']), "return_url" => $alipay_config['return_url'], "notify_url" => $alipay_config['notify_url'], "out_trade_no" => $orderid, "subject" => $subject, "body" => $body, "total_fee" => $total_fee, "paymethod" => $paymethod, "defaultbank" => $defaultbank, "anti_phishing_key" => $anti_phishing_key, "exter_invoke_ip" => $exter_invoke_ip, "show_url" => $show_url, "extra_common_param" => $extra_common_param, "royalty_type" => $royalty_type, "royalty_parameters" => $royalty_parameters); // 构造即时到帐接口 $alipayService = new AlipayService($alipay_config); return $alipayService->create_direct_pay_by_user($parameter); }
public function alipayto() { import("@.Alipay.alipay_service"); $aliapy_config = getAliConfig(); /**************************请求参数**************************/ //必填参数// //请与贵网站订单系统中的唯一订单号匹配 $out_trade_no = $this->_get('oid'); //订单名称,显示在支付宝收银台里的“商品名称”里,显示在支付宝的交易管理的“商品名称”的列表里。 $subject = $this->_get('subject'); //订单描述、订单详细、订单备注,显示在支付宝收银台里的“商品描述”里 $body = $this->_get('body'); //订单总金额,显示在支付宝收银台里的“应付总额”里 $total_fee = $this->_get('money'); //扩展功能参数——默认支付方式// //默认支付方式,取值见“即时到帐接口”技术文档中的请求参数列表 $paymethod = ''; //默认网银代号,代号列表见“即时到帐接口”技术文档“附录”→“银行列表” $defaultbank = ''; //扩展功能参数——防钓鱼// //防钓鱼时间戳 $anti_phishing_key = ''; //获取客户端的IP地址,建议:编写获取客户端IP地址的程序 $exter_invoke_ip = ''; //注意: //1.请慎重选择是否开启防钓鱼功能 //2.exter_invoke_ip、anti_phishing_key一旦被使用过,那么它们就会成为必填参数 //3.开启防钓鱼功能后,服务器、本机电脑必须支持SSL,请配置好该环境。 //示例: //$exter_invoke_ip = '202.1.1.1'; //$ali_service_timestamp = new AlipayService($aliapy_config); //$anti_phishing_key = $ali_service_timestamp->query_timestamp();//获取防钓鱼时间戳函数 //扩展功能参数——其他// //商品展示地址,要用 http://格式的完整路径,不允许加?id=123这类自定义参数 $show_url = 'http://www.xwoo.info/order/'; //自定义参数,可存放任何内容(除=、&等特殊字符外),不会显示在页面上 $extra_common_param = ''; //扩展功能参数——分润(若要使用,请按照注释要求的格式赋值) $royalty_type = ""; //提成类型,该值为固定值:10,不需要修改 $royalty_parameters = ""; //注意: //提成信息集,与需要结合商户网站自身情况动态获取每笔交易的各分润收款账号、各分润金额、各分润说明。最多只能设置10条 //各分润金额的总和须小于等于total_fee //提成信息集格式为:收款方Email_1^金额1^备注1|收款方Email_2^金额2^备注2 //示例: //royalty_type = "10" //royalty_parameters= "111@126.com^0.01^分润备注一|222@126.com^0.01^分润备注二" /************************************************************/ //构造要请求的参数数组 $parameter = array("service" => "create_direct_pay_by_user", "payment_type" => "1", "partner" => trim($aliapy_config['partner']), "_input_charset" => trim(strtolower($aliapy_config['input_charset'])), "seller_email" => trim($aliapy_config['seller_email']), "return_url" => trim($aliapy_config['return_url']), "notify_url" => trim($aliapy_config['notify_url']), "out_trade_no" => $out_trade_no, "subject" => $subject, "body" => $body, "total_fee" => $total_fee, "paymethod" => $paymethod, "defaultbank" => $defaultbank, "anti_phishing_key" => $anti_phishing_key, "exter_invoke_ip" => $exter_invoke_ip, "show_url" => $show_url, "extra_common_param" => $extra_common_param, "royalty_type" => $royalty_type, "royalty_parameters" => $royalty_parameters); //构造即时到帐接口 $alipayService = new AlipayService($aliapy_config); $html_text = $alipayService->create_direct_pay_by_user($parameter); echo $html_text; }
$req_data = '<direct_trade_create_req><notify_url>' . $notify_url . '</notify_url><call_back_url>' . $call_back_url . '</call_back_url><seller_account_name>' . $seller_email . '</seller_account_name><out_trade_no>' . $out_trade_no . '</out_trade_no><subject>' . $subject . '</subject><total_fee>' . $total_fee . '</total_fee><merchant_url>' . $merchant_url . '</merchant_url></direct_trade_create_req>'; /************************************************************/ //构造要请求的参数数组,无需改动 $para_token = array("service" => "alipay.wap.trade.create.direct", "partner" => trim($alipay_config['partner']), "sec_id" => trim($alipay_config['sign_type']), "format" => $format, "v" => $v, "req_id" => $req_id, "req_data" => $req_data, "_input_charset" => trim(strtolower($alipay_config['input_charset']))); //建立请求 $alipaySubmit = new AlipaySubmit($alipay_config); $html_text = $alipaySubmit->buildRequestHttp($para_token); //URLDECODE返回的信息 $html_text = urldecode($html_text); //解析远程模拟提交后返回的信息 $para_html_text = $alipaySubmit->parseResponse($html_text); //获取request_token $request_token = $para_html_text['request_token']; /**************************根据授权码token调用交易接口alipay.wap.auth.authAndExecute**************************/ $req_data = '<auth_and_execute_req><request_token>' . $request_token . '</request_token></auth_and_execute_req>'; //构造要请求的参数数组,无需改动 $parameter = array("service" => "alipay.wap.auth.authAndExecute", "partner" => trim($alipay_config['partner']), "sec_id" => trim($alipay_config['sign_type']), "format" => $format, "v" => $v, "req_id" => $req_id, "req_data" => $req_data, "_input_charset" => trim(strtolower($alipay_config['input_charset']))); //建立请求 $alipaySubmit = new AlipaySubmit($alipay_config); $result = $alipaySubmit->buildRequestForm($parameter, 'get', '确认'); } else { // PC 接口 require FCPATH . 'member/pay/alipay/alipay_submit.class.php'; require FCPATH . 'member/pay/alipay/alipay_service.class.php'; /**************************请求参数**************************/ //构造要请求的参数数组 $parameter = array('service' => 'create_direct_pay_by_user', 'payment_type' => '1', 'partner' => trim($alipay_config['partner']), '_input_charset' => trim(strtolower($alipay_config['input_charset'])), 'seller_email' => trim($alipay_config['seller_email']), 'return_url' => trim($alipay_config['return_url']), 'notify_url' => trim($alipay_config['notify_url']), 'out_trade_no' => $sn, 'subject' => $title, 'body' => dr_lang('m-178', $this->member['username'], $id), 'total_fee' => $money); //构造即时到帐接口 $alipayService = new AlipayService($alipay_config); $result = $alipayService->create_direct_pay_by_user($parameter); }
//注意: //1.请慎重选择是否开启防钓鱼功能 //2.exter_invoke_ip、anti_phishing_key一旦被使用过,那么它们就会成为必填参数 //3.开启防钓鱼功能后,服务器、本机电脑必须支持SSL,请配置好该环境。 //示例: //$exter_invoke_ip = '202.1.1.1'; //$ali_service_timestamp = new AlipayService($aliapy_config); //$anti_phishing_key = $ali_service_timestamp->query_timestamp();//获取防钓鱼时间戳函数 //扩展功能参数——其他// //商品展示地址,要用 http://格式的完整路径,不允许加?id=123这类自定义参数 $show_url = 'http://www.xxx.com/order/myorder.php'; //自定义参数,可存放任何内容(除=、&等特殊字符外),不会显示在页面上 $extra_common_param = ''; //扩展功能参数——分润(若要使用,请按照注释要求的格式赋值) $royalty_type = ""; //提成类型,该值为固定值:10,不需要修改 $royalty_parameters = ""; //注意: //提成信息集,与需要结合商户网站自身情况动态获取每笔交易的各分润收款账号、各分润金额、各分润说明。最多只能设置10条 //各分润金额的总和须小于等于total_fee //提成信息集格式为:收款方Email_1^金额1^备注1|收款方Email_2^金额2^备注2 //示例: //royalty_type = "10" //royalty_parameters= "111@126.com^0.01^分润备注一|222@126.com^0.01^分润备注二" /************************************************************/ //构造要请求的参数数组 $parameter = array("service" => "create_direct_pay_by_user", "payment_type" => "1", "partner" => trim($aliapy_config['partner']), "_input_charset" => trim(strtolower($aliapy_config['input_charset'])), "seller_email" => trim($aliapy_config['seller_email']), "return_url" => trim($aliapy_config['return_url']), "notify_url" => trim($aliapy_config['notify_url']), "out_trade_no" => $out_trade_no, "subject" => $subject, "body" => $body, "total_fee" => $total_fee, "paymethod" => $paymethod, "defaultbank" => $defaultbank, "anti_phishing_key" => $anti_phishing_key, "exter_invoke_ip" => $exter_invoke_ip, "show_url" => $show_url, "extra_common_param" => $extra_common_param, "royalty_type" => $royalty_type, "royalty_parameters" => $royalty_parameters); //构造即时到帐接口 $alipayService = new AlipayService($aliapy_config); $html_text = $alipayService->create_direct_pay_by_user($parameter); echo $html_text;