first commit

This commit is contained in:
hero920103 committed 2025-11-28 10:08:12 +08:00
commit 09a14bf0a3
1088 files changed
+145132

No files matched your search

+48
View File
@@ -0,0 +1,48 @@
<?php
if(!defined('IN_CRONLITE'))exit();
require INDEX_ROOT.'head.php';
?>
<style type="text/css">
body{color:#000;}header { position: relative; }
.bann{ content:'';background-size:100%;background:#4280cb;background:-webkit-gradient(linear,0 0,0 100%,from(#4585d2),to(#4280cb));background:-moz-linear-gradient(top,#4585d2,#4280cb);background:linear-gradient(to bottom,#4585d2,#4280cb);top:0;left:0;z-index:-1;min-height:50px;width:100%}.fl .active{ color:#3F5061;background:#fff;border-color:#fff}
p {
margin: 0 0 10px 0;
font-size: 15px;
}
h4 {
font-size: 20px;
line-height: 30px;
}
</style>
<div class="bann">
<div class="col-xs-12"style="text-align:center;">
<div class="h3" style="color:#fff;margin-top: 35px;margin-bottom: 30px;">服务条款</div>
<div class="text-muted" style="color:#ddd;margin-top: 35px;margin-bottom: 30px;">请使用本支付系统前,先认真阅读商户服务条款,<?php echo $conf['sitename']?>系统有权力随时更新条款,请您严格遵守我们服务条款内的条约,注册商户后则默认代表您已同意我们的服务条款。</div>
<div style="clear:both;"></div>
</div><div style="clear:both;"></div>
</div>
<div class="container">
<!-- Docs nav
================================================== -->
<div class="row">
<div class="col-md-12">
<article class="post page">
<section class="post-content">
<p>
<h4>特别提示:</h4><p style="word-break:break-all"><strong>本协议由<?php echo $conf['sitename']?>系统和你共同签订,具有合同法律效力。</strong></p><p><strong>请你务必审慎阅读并充分理解各条款内容,特别是免除或者限制责任的条款、争议解决和法律适用条款。免除或者限制责任的条款可能以加粗字体显示,你应重点阅读。除非你已阅读并接受本协议所有条款,否则你无权使用本服务。你使用本服务即视为你已阅读并同意本协议的约束。如你对本协议有任何疑问的,应向客服咨询。</strong></p><h4>一、定义</h4><p>如无特别说明,下列术语在本协议中的定义为:</p><p><strong>1.1商户号:</strong>指你凭以登录,操作商户平台的账号,你成功申请商户号后,<?php echo $conf['sitename']?>系统将向你在本协议中载明的联系邮箱发送电子邮件,告知你的商户平台登录账号及初始密码,你可在商户平台中修改该初始密码,你亦可根据需要在商户平台中为该登录账号设置对应的商户密钥,用来查询和操作<?php echo $conf['sitename']?>系统商户号。</p><p><strong>1.2商户密钥:</strong>指你凭以登录,操作商户平台的账号密码,你成功申请商户号后,<?php echo $conf['sitename']?>系统将向你在本协议中载明的联系邮箱发送电子邮件,告知你的商户平台登录账号及初始密码,你可在商户平台中修改该初始密码,你亦可根据需要在商户平台中为该登录账号设置对应的商户密钥,用来查询和操作<?php echo $conf['sitename']?>系统商户号。</p><p><strong>1.3结算:</strong>指用户购买你的商品或服务后,<?php echo $conf['sitename']?>系统在一定周期内将交易资金记账至你的<?php echo $conf['sitename']?>系统商户号,并根据协议约定和你设置提现至你银行账户的行为。</p><p><strong>1.4提现:</strong><?php echo $conf['sitename']?>系统根据你指令或协议约定,在一定周期内向备付金存款银行发出转账指令,要求备付金存款银行将相应资金转账至你指定的合法收款账户的行为。</p><h4>二、服务内容</h4><p><strong>2.1本服务的场景和功能。</strong><?php echo $conf['sitename']?>系统为你提供货币资金转移服务,当用户购买你的商品或服务时,可通过本服务完成交易。本服务的具体运用包括WAP支付,H5支付等</p><p><strong>2.2服务限制。本服务仅能用于你在商户平台申报并经核准的商品或服务,且每笔订单不能超过<?php echo $conf['sitename']?>系统规定的限额。你了解并同意<?php echo $conf['sitename']?>系统有权根据你经营的商品或服务类型,以及你经营活动的风险状况调整你的交易额度。</strong></p><h4>三、<?php echo $conf['sitename']?>系统的权利和义务</h4><p><strong>3.1支付系统建设。</strong><?php echo $conf['sitename']?>系统负责支付系统的建设、运行和管理,并确保该系统的安全性。</p><p><strong>3.2交易查询。</strong><?php echo $conf['sitename']?>系统设立网上交易查询系统及查询接口,为你提供商户信息管理和交易信息查询服务。</p><p><strong>3.3支付指令校验。</strong><?php echo $conf['sitename']?>系统依据你的商户平台登录账号、登录密码来校验你支付指令的真实性、有效性。当你的商户平台登录账号和登录密码均校验通过时,即视为系你本人操作<?php echo $conf['sitename']?>系统商户号,<?php echo $conf['sitename']?>系统无需校验其他信息即可执行支付指令。</p><p><strong>3.4交易纠纷处理。<?php echo $conf['sitename']?>系统仅为你提供货币资金转移服务,你与用户或其他主体之间的纠纷由你自行负责处理,与<?php echo $conf['sitename']?>系统无关,但是,因<?php echo $conf['sitename']?>系统系统故障引起的资金转移服务纠纷除外。</strong></p><p><strong>3.5商户经营审核。<?php echo $conf['sitename']?>系统有权定期或不定期审核你的业务类型,以及通过本服务售卖的物品和服务,若你违反本协议第2.2条约定或从事不符合国家相关法律法规规定的经营活动时,<?php echo $conf['sitename']?>系统有权暂停或终止提供服务。</strong></p><p><strong>3.6交易停滞。你自开户之日起6个月内无交易记录,或连续180个自然日未利用本服务产生交易额的,<?php echo $conf['sitename']?>系统有权暂停服务并要求你重新核实身份,你不予配合或身份核实未通过的,<?php echo $conf['sitename']?>系统有权终止本协议且无需承担任何法律责任。如果你的受理终端或收款码连续3个月内未发生交易,<?php echo $conf['sitename']?>系统有权暂停服务并要求你重新核实身份,你不予配合或身份核实未通过的,<? Line truncated
</section>
</article>
</div>
</div>
</div>
<?php require INDEX_ROOT.'foot.php';?>
File diff suppressed because it is too large. Load diff
@@ -0,0 +1 @@
*{margin:0;padding:0}body{width:100%;font-family:"Microsoft YaHei",Arial,"Hiragino Sans GB",STHeiti,"WenQuanYi Micro Hei",SimSun,sans-serif}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-button:vertical{display:none}::-webkit-scrollbar-track:vertical{background-color:#000}::-webkit-scrollbar-track-piece{background-color:#F5F5F5}::-webkit-scrollbar-thumb:vertical{margin-right:10px;background-color:#A6A6A6}::-webkit-scrollbar-thumb:vertical:hover{background-color:#aaa}::-webkit-scrollbar-corner:vertical{background-color:#535353}::-webkit-scrollbar-resizer:vertical{background-color:#FF6E00}.navbar-default{background:#fff;border:0}::-webkit-scrollbar-thumb{border-radius:5px}img.user_icon{height:36px;border-radius:50%}.logo{display:inline-block;width:160px;height:40px;background:url(logo.png) no-repeat;background-size:95%;background-position:0 0;position:relative;top:13px;left:15px}.logo_blue{background-position:0 -40px}.header-actions .logo_img{padding-top:13px}.header-actions:hover b.caret.user_caret{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}b.caret.user_caret{position:absolute;top:30px;right:3px;-webkit-transition:200ms;-ms-transition:200ms;-moz-transition:200ms;-o-transition:200ms;transition:200ms}a:focus{border:none;outline:0}.header-actions{position:relative}.select_go{box-shadow:0 0 10px rgba(0,0,0,.3);min-width:100px;background:#fff;position:absolute;left:-15px;border:1px solid #e5e5e5;-webkit-transition:all .6s cubic-bezier(0.175,.885,.32,1.275);-moz-transition:all .6s cubic-bezier(0.175,.885,.32,1.275);-o-transition:all .6s cubic-bezier(0.175,.885,.32,1.275);transition:all .6s cubic-bezier(0.175,.885,.32,1.275);opacity:0;-webkit-transform:scale3d(0,0,0);-moz-transform:scale3d(0,0,0);-ms-transform:scale3d(0,0,0);-o-transform:scale3d(0,0,0);transform:scale3d(0,0,0);-webkit-transform-origin:40px top;-moz-transform-origin:40px top;-ms-transform-origin:40px top;-o-transform-origin:40px top;transform-origin:40px top}.select_go .go_console,.select_go .go_logout{display:block;width:100%;height:40px;line-height:40px;color:#333}.select_go .go_console:hover,.select_go .go_logout:hover{transition:.2s;background:#f5f5f5}.nav-new{box-shadow:0 0 10px rgba(0,0,0,.3);min-width:100px;background:#fff;left:calc(50% - 48px);border:1px solid #e5e5e5;position:absolute;white-space:nowrap;-webkit-transition:all .6s cubic-bezier(0.175,.885,.32,1.275);-moz-transition:all .6s cubic-bezier(0.175,.885,.32,1.275);-o-transition:all .6s cubic-bezier(0.175,.885,.32,1.275);transition:all .6s cubic-bezier(0.175,.885,.32,1.275);opacity:0;-webkit-transform:scale3d(0,0,0);-moz-transform:scale3d(0,0,0);-ms-transform:scale3d(0,0,0);-o-transform:scale3d(0,0,0);transform:scale3d(0,0,0);-webkit-transform-origin:40px top;-moz-transform-origin:40px top;-ms-transform-origin:40px top;-o-transform-origin:40px top;transform-origin:40px top}.nav-new .li-new{display:block;width:100%;height:40px;line-height:40px;color:#333}.nav-new .li-new:hover{transition:.2s;background:#f5f5f5}.nav-new:after{content:"";display:block;height:0;clear:both;visibility:hidden}.header-doc:hover .nav-new{-webkit-transform:scale3d(1,1,1);-moz-transform:scale3d(1,1,1);-ms-transform:scale3d(1,1,1);-o-transform:scale3d(1,1,1);transform:scale3d(1,1,1);opacity:1}.header-actions:hover .select_go{-webkit-transform:scale3d(1,1,1);-moz-transform:scale3d(1,1,1);-ms-transform:scale3d(1,1,1);-o-transform:scale3d(1,1,1);transform:scale3d(1,1,1);opacity:1}li{list-style:none}@media (min-width:768px) and (max-width:992px){.container{padding-left:10px}header ul.c_navbar li{margin-left:20px}header ul.c_navbar li a.font_size{margin-left:0}header ul.z_navbar li a{padding:0 5px}.screen .h4{line-height:2.2em}.proceed{font-size:1em;padding:10px 25px}.bottom_line{width:100%;height:200px;margin-top:10%}.bottom_line ul.ico-img{width:auto;padding:0;margin-left:38%}.bottom_line ul.ico-img li{float:left;width:50px}.bottom_line ul.ico-img li a{color:#898B8D;font-size:2em}.soso{position:absolute;top:55%;left:40%}.soso img{width:110px}}@media (min-width:992px){ul.z_navbar li a{padding:0 20px}.banner2 .ban2_content{font-size:1.5em;line-height:40px}.banner2 .ban2_text .ban2_middle{font-size:3em}.banner2 .ban2_text .ban3_middle{font-size:3em}.banner3 .ban3_content{font-size:1.5em;line-height:40px}.banner3 .ban3_text .ban3_middle{font-size:3em}header ul.c_navbar li{margin-left:20px}.screen .h4{line-height:2.2em}.proceed{font-size:1.4em;padding:12px 40px}.address footer ul li a{letter-spacing:2px}.bottom_line{width:100%;height:200px;margin-top:20%;border-left:1px solid #404346}.bottom_line ul.ico-img{width:auto;padding:0;margin-left:38%}.bottom_line ul.ico-img li{float:left;width:50px}.bottom_line ul.ico-img li a{color:#898B8D;font-size:2em}.soso{position:absolute;top:120px;left:43%}.soso img{width:110px;height:110px}}@media (max-width:682px){.banner2 .ban2_content{font-size:1em}.banner2 .ban2_teLine truncated
+877
View File
@@ -0,0 +1,877 @@
header {
position:fixed;
background:#fff
}
@media screen and (min-width:992px) {
html,body {
height:100%
}
.center_content {
padding-left:10%
}
#myCarousel,.banner2,.banner3 {
height:100%;
min-height:450px
}
#myCarousel .carousel-inner,.carousel-inner>.item {
height:100%
}
.banner2 .container {
height:100%
}
.banner2 .container .row {
height:100%
}
.banner2 .container .row .col-md-6 {
height:100%
}
.banner2 .container .row .col-md-6 .cloud_host_img {
top:22%
}
.banner2 .container .row .col-md-6 .ban2_text {
height:100%
}
.ban2_text {
position:relative
}
.ban2_text .ban2_status,.ban2_text .ban3_status {
position:absolute;
top:30%
}
.ban2_text .ban2_status .ban2_middle,.ban2_text .ban3_status .ban2_middle,.ban2_text .ban2_status .ban3_middle,.ban2_text .ban3_status .ban3_middle {
color:#fff;
position:relative;
letter-spacing:6px;
top:35%;
left:10%
}
.ban2_content,.ban3_content {
color:#fff;
width:90%;
position:relative;
letter-spacing:1px;
top:37%;
left:10%
}
.ban2_experience {
font-size:1.2em;
color:#fff;
margin-top:30px;
position:relative;
left:10%
}
.cloud_host_img {
position:absolute
}
.blog-article {
padding:20px
}
.cloud_db_img {
position:absolute;
top:20%
}
}@media (min-width:682px) and (max-width:992px) {
header {
position:fixed;
background:#fff
}
html,body {
height:100%
}
.center_content {
padding-left:5%
}
#myCarousel,.banner2,.banner3 {
height:100%;
min-height:450px
}
#myCarousel .carousel-inner,.carousel-inner>.item {
height:100%
}
.banner2 .container {
height:100%
}
.banner2 .container .row {
height:100%
}
.banner2 .container .row .col-md-6 {
height:100%
}
.banner2 .container .row .col-md-6 .ban2_text {
height:100%
}
.ban2_text {
position:relative
}
.ban2_text .ban2_status,.ban2_text .ban3_status {
position:absolute;
top:30%
}
.ban2_text .ban2_status .ban2_middle,.ban2_text .ban3_status .ban2_middle,.ban2_text .ban2_status .ban3_middle,.ban2_text .ban3_status .ban3_middle {
color:#fff;
position:relative;
letter-spacing:6px;
top:35%;
left:10%;
font-size:20px
}
.ban2_content,.ban3_content {
color:#fff;
width:90%;
position:relative;
letter-spacing:1px;
top:37%;
left:10%
}
.ban2_experience,.ban3_experience {
font-size:1.2em;
color:#fff;
margin-top:30px;
position:relative;
left:10%
}
.cloud_host_img,.cloud_db_img {
position:absolute;
top:22%
}
.blog-article {
padding:15px
}
}@media (max-width:682px) {
html,body {
height:100%;
min-width:400px;
font-size:12px
}
#myCarousel,.banner2,.banner3 {
height:100%
}
.docker {
top:0!important
}
#myCarousel .carousel-inner,.carousel-inner>.item {
height:100%
}
.banner2 .container {
height:100%
}
.banner2 .container .row {
height:100%
}
.banner2 .container .row .col-xs-12 {
height:50%
}
.banner2 .container .row .col-xs-12 .ban2_text {
height:100%
}
.banner2 .ban2_text .ban2_status {
text-align:center;
font-size:1.5em
}
.cloud_host_img,.cloud_db_img {
width:60%;
margin-left:20%;
margin-top:10%
}
.ban2_text {
position:relative
}
.ban2_text .ban3_status {
position:absolute;
text-align:center;
font-size:1.5em
}
.ban2_text .ban3_status .ban3_middle {
color:#fff;
letter-spacing:6px
}
.ban2_text .ban3_status .ban3_content {
color:#fff;
width:100%;
letter-spacing:3px
}
.ban2_text .ban2_status {
position:absolute;
top:15%
}
.ban2_text .ban2_status .ban2_middle {
color:#fff;
position:relative;
letter-spacing:6px;
top:35%
}
.ban2_content {
color:#fff;
width:100%;
position:relative;
letter-spacing:3px;
top:37%
}
.ban2_experience {
color:#fff;
margin-top:30px;
position:relative
}
.blog-article {
padding:5px
}
.blog-article .h4 {
font-size:14px
}
.blog-article .h5 {
margin-top:5px;
font-size:12px
}
.screen4 .safe-content {
font-size:14px
}
.tenxcloud_news {
margin-top:10px
}
.screen6 .collaborate li a div {
margin:0 auto
}
}#nav-top {
box-shadow:0 3px 3px rgba(0,0,0,.175)
}
.proceed {
color:#fff;
border:1px solid #fff;
border-radius:5px;
-moz-transition:background .4s ease;
-ms-transition:background .4s ease;
-webkit-transition:background .4s ease;
transition:background .4s ease
}
.proceed-foot {
color:#D9EFF0;
padding:10px 50px;
font-size:2em;
border:1px solid #fff
}
.proceed-2,.proceed-3,.proceed-4 {
color:#eee;
border:1px solid #eee
}
.proceed:hover {
color:#3F5061;
background:#fff;
border-color:#fff
}
#youremail {
border-radius:4px;
width:380px;
height:50px;
color:#eee;
font-size:18px;
border:1px solid #eee;
background:0 0;
vertical-align:middle;
text-indent:10px;
line-height:normal
}
#youremail::-webkit-input-placeholder {
color:#eee
}
#youremail:-moz-placeholder {
color:#eee
}
#youremail::-moz-placeholder {
color:#eee
}
#youremail:-ms-input-placeholder {
color:#eee
}
#apply-for {
margin-left:10px;
line-height:35px;
background:#4280CB;
vertical-align:top;
border-radius:4px;
height:50px;
width:126px;
font-size:18px;
cursor:pointer;
-moz-transition:background .4s ease;
-ms-transition:background .4s ease;
-webkit-transition:background .4s ease;
transition:background .4s ease;
font-family:Microsoft Yahei,Hiragino Sans GB,WenQuanYi Micro Hei,sans-serif
}
#apply-for:hover {
background:#DFDFDF;
color:#555
}
#apply-bottom {
margin-left:10px;
line-height:35px;
background:#eee;
vertical-align:middle;
border-radius:4px;
height:50px;
padding:8px 12px;
font-size:18px;
cursor:pointer;
-moz-transition:background .4s ease;
-ms-transition:background .4s ease;
-webkit-transition:background .4s ease;
transition:background .4s ease;
font-family:Microsoft Yahei,Hiragino Sans GB,WenQuanYi Micro Hei,sans-serif
}
a {
color:inherit
}
a:hover {
text-decoration:none
}
.carousel-indicators li {
margin:0 8px
}
.carousel-indicators .active {
margin:0 7px
}
.screen1 {
margin-top:65px;
height:calc(100% - 65px)
}
.screen1 #myCarousel {
width:100%;
overflow:hidden
}
.carousel-indicators {
bottom:20px
}
.move_cloud {
width:100%;
height:200px;
position:absolute;
background:url(../images/hostingupline.png) no-repeat;
-webkit-animation:move_top 10s ease-out alternate infinite;
-moz-animation:move_top 10s ease-out alternate infinite;
-ms-animation:move_top 10s ease-out alternate infinite;
animation:move_top 10s ease-out alternate infinite
}
.banner2 {
width:100%;
background:url(../images/hostingupline.png) no-repeat;
background-size:100%;
position:relative
}
.banner2:after {
content:'';
background:#4280cb;
background:-webkit-gradient(linear,0 0,0 100%,from(#4585d2),to(#4280cb));
background:-moz-linear-gradient(top,#4585d2,#4280cb);
background:linear-gradient(to bottom,#4585d2,#4280cb);
position:absolute;
top:0;
left:0;
height:100%;
width:100%;
z-index:-1
}
.banner3:after {
content:'';
background:#02bf8b;
background:-webkit-gradient(linear,0 0,0 100%,from(#02bf8b),to(#01ad7f));
background:-moz-linear-gradient(top,#02bf8b,#01ad7f);
background:linear-gradient(to bottom,#02bf8b,#01ad7f);
position:absolute;
top:0;
left:0;
height:100%;
width:100%;
z-index:-1
}
.banner3 {
width:100%
}
.banner4:after {
content:'';
background:#33405a;
background:-webkit-gradient(linear,0 0,0 100%,from(#3e3e4a),to(#3e3e4a));
background:-moz-linear-gradient(top,#33405a,#24314e);
background:linear-gradient(to bottom,#33405a,#24314e);
position:absolute;
top:0;
left:0;
height:100%;
width:100%;
z-index:-1
}
#trun_left {
position:absolute;
width:8%;
top:0;
left:0;
text-align:center;
height:100%;
z-index:3
}
#trun_left ._left {
display:none;
font-size:5em;
padding:200px 10px;
color:#eee
}
#trun_left:hover ._left {
display:block
}
#trun_right:hover ._right {
display:block
}
#trun_right {
height:100%;
width:8%;
top:0;
position:absolute;
right:0;
z-index:3;
text-align:center
}
#trun_right ._right {
display:none;
font-size:5em;
color:#eee;
padding:200px 10px
}
.tenxcloud_news {
font-size:1.5em
}
.spring_icon {
margin:0 auto;
width:160px;
height:160px;
background:url(../images/shensuo.png) no-repeat
}
.screen2 {
width:100%;
padding:80px 0
}
.screen2 .center_content {
margin:20px auto;
transition:.3s all
}
.screen2 .center_content .servers {
height:70px;
width:70px;
float:left;
background:url(../images/server_item.png) no-repeat;
transition:.5s background ease-in-out
}
.screen2 .center_content .s_item {
background-position:0 0
}
.screen2 .center_content .r_item {
background-position:0 -80px
}
.screen2 .center_content .m_item {
background-position:0 -160px
}
.screen2 .center_content .a_item {
background-position:0 -240px
}
.screen2 .process:hover {
color:#4280CB
}
.screen2 .process:hover .s_item {
background-position:-100px 0
}
.screen2 .containers:hover {
color:#4280CB
}
.screen2 .containers:hover .r_item {
background-position:-100px -80px
}
.screen2 .primer:hover {
color:#4280CB
}
.screen2 .primer:hover .m_item {
background-position:-95px -160px
}
.screen2 .appstore:hover {
color:#4280CB
}
.screen2 .appstore:hover .a_item {
background-position:-100px -240px
}
.screen3 {
width:100%;
background:#FAFAFB;
position:relative;
padding:50px 0
}
.screen3 .cloud_server {
text-align:center;
margin:20px 0;
color:#696969;
font-size:16px
}
.screen3 .cloud_server .more {
margin:10px 0;
font-size:1.2em;
background:#fff;
border:1px solid #333;
padding:10px 20px;
border-radius:2px;
-moz-transition:background .4s ease;
-ms-transition:background .4s ease;
-webkit-transition:background .4s ease;
transition:background .4s ease
}
.screen3 .server-head {
margin-top:20px;
color:#696969;
text-align:center
}
.screen3 .server_item {
background:url(../images/container_server_icon.png) no-repeat;
height:135px;
width:140px;
transition:.5s background;
margin:0 auto
}
.screen3 .h5 {
margin-bottom:50px
}
.screen3 .container_server {
background-position:0 0
}
.screen3 .arrange {
background-position:2px -148px
}
.screen3 .codebuild {
background-position:2px -300px
}
.screen3 .server-market {
background-position:2px -449px
}
.screen3 .registry {
background-position:3px -605px
}
.screen3 .ci {
background-position:3px -757px
}
.screen3 .hosting {
background-position:2px -905px
}
.screen3 .private {
background-position:2px -1049px
}
.screen3 #container_server:hover .server-head {
color:#55C782
}
.screen3 #container_server:hover .container_server {
background-position:-146px 0
}
.screen3 #server-arrange:hover .server-head {
color:#4280CB
}
.screen3 #server-arrange:hover .arrange {
background-position:-146px -148px
}
.screen3 #codebuild:hover .server-head {
color:#F4B329
}
.screen3 #codebuild:hover .codebuild {
background-position:-146px -300px
}
.screen3 #server-market:hover .server-head {
color:#8376B6
}
.screen3 #server-market:hover .server-market {
background-position:-146px -449px
}
.screen3 #registry:hover .server-head {
color:#55c782
}
.screen3 #registry:hover .registry {
background-position:-146px -605px
}
.screen3 #ci:hover .server-head {
color:#4280cb
}
.screen3 #ci:hover .ci {
background-position:-146px -757px
}
.screen3 #hosting:hover .server-head {
color:#f4b329
}
.screen3 #hosting:hover .hosting {
background-position:-146px -905px
}
.screen3 #private:hover .server-head {
color:#998fc3
}
.screen3 #private:hover .private {
background-position:-146px -1049px
}
.screen4 {
width:100%;
text-align:center;
padding:40px 0 80px;
color:#fff;
background:url(../images/tese.jpg) no-repeat;
background-size:100% 100%
}
.screen4 .cloud_server {
text-align:center;
font-size:16px
}
.screen4 .safe-content {
line-height:1.5em
}
.screen4 .design_safe {
width:100px;
height:110px;
margin:10px auto;
background:url(../images/tesetubiao.png) no-repeat
}
.screen4 .safe_ease {
background-position:0 0
}
.screen4 .design_safe.tall {
background-position:0 -110px
}
.screen4 .design_safe.seeyou {
background-position:0 -218px
}
.screen4 .design_safe.mix {
background-position:0 -320px
}
.screen5 {
padding:40px 0 80px;
background:#FAFAFB
}
.screen5 .blog-head {
text-align:center;
margin-bottom:30px;
color:#696969
}
.screen5 .blog-date {
font-size:20px;
color:#fff;
text-align:center;
margin-bottom:20px;
width:100px;
height:110px;
background:#4B80CB
}
.screen5 .blog-date .hrs {
margin:10px auto;
width:60%;
border-color:#a9c3e6
}
.screen5 .blog-article {
width:calc(100% - 100px);
height:110px;
background:#fff
}
.screen5 .blog-article .h5 {
line-height:1.3em
}
.screen5 .blog-body:hover .blog-date {
background-color:#2fba66
}
.screen6 {
width:100%;
background:#FAFAFB;
padding:40px 0 80px;
text-align:center
}
.screen6 .cloud_server {
color:#696969;
height:100px
}
.screen6 .collaborate {
width:400%;
position:relative;
height:150px
}
.screen6 .collaborate ul {
height:110px;
width:25%;
float:left
}
.screen6 .collaborate ul li {
float:left;
width:20%;
min-width:180px;
height:55px
}
.screen6 .collaborate ul li .partner {
width:190px;
height:46px;
background:url(../images/partner.png) no-repeat
}
.screen6 .collaborate ul li .aliyun {
background-position:-206px 0
}
.screen6 .collaborate ul li .amazon {
background-position:-191px -60px
}
.screen6 .collaborate ul li .qingcloud {
background-position:-191px -120px
}
.screen6 .collaborate ul li .segmentfault {
background-position:-191px -170px
}
.screen6 .collaborate ul li .oschina {
background-position:-191px -223px
}
.screen6 .collaborate ul li .coding {
background-position:-191px -282px
}
.screen6 .collaborate ul li .fir_im {
background-position:-191px -345px
}
.screen6 .collaborate ul li .gitcafe {
background-position:-191px -400px
}
.screen6 .collaborate ul li .appcan {
background-position:-191px -473px
}
.screen6 .collaborate ul li .jisuanke {
background-position:-191px -528px
}
.screen6 .collaborate ul li .partner2 {
width:190px;
height:46px;
background:url(../images/partner2.png) no-repeat
}
.screen6 .collaborate ul li .kaiyuanshe {
background-position:-15px 0
}
.screen6 .collaborate ul li .meituan {
background-position:-25px -53px
}
.screen6 .collaborate ul li .easemob {
background-position:0 -108px
}
.screen6 .collaborate ul li .wilddog {
background-position:0 -162px
}
.screen6 .collaborate ul li .yuntongxun {
background-position:0 -215px
}
.screen6 .collaborate ul li .cloudwise {
background-position:10px -260px
}
.screen6 .collaborate ul li .udesk {
background-position:-5px -319px
}
.screen6 .collaborate ul li .upcloud {
background-position:-5px -365px
}
.screen6 .collaborate ul li .gbtags {
background-position:-5px -470px
}
.screen6 .collaborate ul li .oneapm {
background-position:-5px -415px
}
.screen6 .collaborate ul li .partner3 {
width:190px;
height:46px;
background:url(../images/partner3.png?rev=0.21) no-repeat
}
.screen6 .collaborate ul li .qiniu {
background-position:0 0
}
.screen6 .collaborate ul li .anchnet {
background-position:10px -60px
}
.screen6 .collaborate ul li .rongkecloud {
background-position:-15px -116px
}
.screen6 .collaborate ul li .zhugeio {
background-position:-15px -176px
}
.screen6 .collaborate ul li .yuantuan {
background-position:-15px -242px
}
.screen6 .collaborate ul li .kr36 {
background-position:-15px -360px
}
.screen6 .collaborate ul li .kf5 {
background-position:-15px -300px
}
.screen6 .collaborate ul li .bee {
background-position:0 -418px
}
.screen6 .collaborate ul li .bmob {
background-position:10px -465px
}
.screen6 .collaborate ul li .unisound {
background-position:-10px -533px
}
.screen6 .collaborate ul li .safedog {
background-position:-10px -591px
}
.screen6 .collaborate ul li .apistore {
background-position:-10px -650px
}
.screen6 .collaborate .partnerRun {
position:absolute;
bottom:0;
left:10px;
width:24.6%;
text-align:center
}
.screen6 .collaborate .partnerRun .slide {
display:inline-block;
width:10px;
height:10px;
border-radius:10px;
border:1px solid #9C9C9C;
margin:0 8px;
cursor:pointer;
transition:all .3s
}
.screen6 .collaborate .partnerRun .slide.active {
background:#9C9C9C
}
.screen7 {
padding:60px 0 100px
}
.screen7 .cloud_server {
text-align:center;
margin-bottom:30px;
color:#696969
}
.screen7 .media-item {
width:150px;
height:70px
}
.screen7 .media-content {
line-height:1.2em
}
@keyframes move_top {
from {
left:0;
top:0
}
to {
left:10%
}
}@-moz-keyframes move_top {
from {
left:0
}
to {
left:10%
}
}@-webkit-keyframes move_top {
from {
left:0
}
to {
left:10%
}
}@-o-keyframes move_top {
from {
left:0
}
to {
left:10%
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

+301
View File
@@ -0,0 +1,301 @@
<?php
if(!defined('IN_CRONLITE'))exit();
$paytype = $DB->getAll("SELECT * FROM pre_type WHERE status=1 ORDER BY id ASC");
?>
<div id="toc2" class="api_block">
<h3>
协议规则
</h3>
<p>请求数据格式:application/x-www-form-urlencoded</p>
<p>返回数据格式:JSON</p>
<p>签名算法:MD5</p>
<p>字符编码:UTF-8</p>
</div>
<div id="pay0" class="api_block">
<h3>
页面跳转支付
</h3>
<p><font color="#777">此接口可用于用户前台直接发起支付,使用form表单跳转或拼接成url跳转。</font></p>
<p>URL地址:<font color="#29389f"><?php echo $siteurl?>submit.php</font></p>
<p>请求方式:<font color="#29389f">POST 或 GET(推荐POST,不容易被劫持或屏蔽)</font></p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>支付方式</td><td>type</td><td>否</td><td>String</td><td>alipay</td><td><a href="#pay4" style="color:#4585d2">支付方式列表</a></td></tr>
<tr><td>商户订单号</td><td>out_trade_no</td><td>是</td><td>String</td><td>20160806151343349</td><td></td></tr>
<tr><td>异步通知地址</td><td>notify_url</td><td>是</td><td>String</td><td>http://www.pay.com/notify_url.php</td><td>服务器异步通知地址</td></tr>
<tr><td>跳转通知地址</td><td>return_url</td><td>是</td><td>String</td><td>http://www.pay.com/return_url.php</td><td>页面跳转通知地址</td></tr>
<tr><td>商品名称</td><td>name</td><td>是</td><td>String</td><td>VIP会员</td><td>如超过127个字节会自动截取</td></tr>
<tr><td>商品金额</td><td>money</td><td>是</td><td>String</td><td>1.00</td><td>单位:元,最大2位小数</td></tr>
<tr><td>业务扩展参数</td><td>param</td><td>否</td><td>String</td><td>没有请留空</td><td>支付后原样返回</td></tr>
<tr><td>签名字符串</td><td>sign</td><td>是</td><td>String</td><td>202cb962ac59075b964b07152d234b70</td><td>签名算法<a href="#pay3" style="color:#4585d2">点此查看</a></td></tr>
<tr><td>签名类型</td><td>sign_type</td><td>是</td><td>String</td><td>MD5</td><td>默认为MD5</td></tr>
</tbody>
</table>
<p><font color="#993939">支付方式(type)不传会跳转到收银台支付</font></p>
</div>
<div id="pay1" class="api_block">
<h3>
API接口支付
</h3>
<p><font color="#777">此接口可用于服务器后端发起支付请求,会返回支付二维码链接或支付跳转url。</font></p>
<p>URL地址:<font color="#29389f"><?php echo $siteurl?>mapi.php</font></p>
<p>请求方式:<font color="#29389f">POST</font></p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>支付方式</td><td>type</td><td>是</td><td>String</td><td>alipay</td><td><a href="#pay4" style="color:#4585d2">支付方式列表</a></td></tr>
<tr><td>商户订单号</td><td>out_trade_no</td><td>是</td><td>String</td><td>20160806151343349</td><td></td></tr>
<tr><td>异步通知地址</td><td>notify_url</td><td>是</td><td>String</td><td>http://www.pay.com/notify_url.php</td><td>服务器异步通知地址</td></tr>
<tr><td>跳转通知地址</td><td>return_url</td><td>否</td><td>String</td><td>http://www.pay.com/return_url.php</td><td>页面跳转通知地址</td></tr>
<tr><td>商品名称</td><td>name</td><td>是</td><td>String</td><td>VIP会员</td><td>如超过127个字节会自动截取</td></tr>
<tr><td>商品金额</td><td>money</td><td>是</td><td>String</td><td>1.00</td><td>单位:元,最大2位小数</td></tr>
<tr><td>用户IP地址</td><td>clientip</td><td>是</td><td>String</td><td>192.168.1.100</td><td>用户发起支付的IP地址</td></tr>
<tr><td>设备类型</td><td>device</td><td>否</td><td>String</td><td>pc</td><td>根据用户浏览器的UA判断,<br/>传入用户所使用的浏览器<br/>或设备类型,默认为pc<br/><a href="#pay5" style="color:#4585d2">设备类型列表</a></td></tr>
<tr><td>业务扩展参数</td><td>param</td><td>否</td><td>String</td><td>没有请留空</td><td>支付后原样返回</td></tr>
<tr><td>签名字符串</td><td>sign</td><td>是</td><td>String</td><td>202cb962ac59075b964b07152d234b70</td><td>签名算法<a href="#pay3" style="color:#4585d2">点此查看</a></td></tr>
<tr><td>签名类型</td><td>sign_type</td><td>是</td><td>String</td><td>MD5</td><td>默认为MD5</td></tr>
</tbody>
</table>
<p>返回结果(json):</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>返回状态码</td><td>code</td><td>Int</td><td>1</td><td>1为成功,其它值为失败</td></tr>
<tr><td>返回信息</td><td>msg</td><td>String</td><td></td><td>失败时返回原因</td></tr>
<tr><td>订单号</td><td>trade_no</td><td>String</td><td>20160806151343349</td><td>支付订单号</td></tr>
<tr><td>支付跳转url</td><td>payurl</td><td>String</td><td><?php echo $siteurl?>pay/wxpay/202010903/</td><td>如果返回该字段,则直接跳转到该url支付</td></tr>
<tr><td>二维码链接</td><td>qrcode</td><td>String</td><td>weixin://wxpay/bizpayurl?pr=04IPMKM</td><td>如果返回该字段,则根据该url生成二维码</td></tr>
<tr><td>小程序跳转url</td><td>urlscheme</td><td>String</td><td>weixin://dl/business/?ticket=xxx</td><td>如果返回该字段,则使用js跳转该url,可发起微信小程序支付</td></tr>
</tbody>
</table>
<p><font color="#993939">注:payurl、qrcode、urlscheme 三个参数只会返回其中一个</font></p>
</div>
<div id="pay2" class="api_block">
<h3>
支付结果通知
</h3>
<p>通知类型:服务器异步通知(notify_url)、页面跳转通知(return_url)</p>
<p>请求方式:GET</p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>易支付订单号</td><td>trade_no</td><td>是</td><td>String</td><td>20160806151343349021</td><td><?php echo $conf['sitename']?>订单号</td></tr>
<tr><td>商户订单号</td><td>out_trade_no</td><td>是</td><td>String</td><td>20160806151343349</td><td>商户系统内部的订单号</td></tr>
<tr><td>支付方式</td><td>type</td><td>是</td><td>String</td><td>alipay</td><td><a href="#pay4" style="color:#4585d2">支付方式列表</a></td></tr>
<tr><td>商品名称</td><td>name</td><td>是</td><td>String</td><td>VIP会员</td><td></td></tr>
<tr><td>商品金额</td><td>money</td><td>是</td><td>String</td><td>1.00</td><td></td></tr>
<tr><td>支付状态</td><td>trade_status</td><td>是</td><td>String</td><td>TRADE_SUCCESS</td><td>只有TRADE_SUCCESS是成功</td></tr>
<tr><td>业务扩展参数</td><td>param</td><td>否</td><td>String</td><td></td><td></td></tr>
<tr><td>签名字符串</td><td>sign</td><td>是</td><td>String</td><td>202cb962ac59075b964b07152d234b70</td><td>签名算法<a href="#pay3" style="color:#4585d2">点此查看</a></td></tr>
<tr><td>签名类型</td><td>sign_type</td><td>是</td><td>String</td><td>MD5</td><td>默认为MD5</td></tr>
</tbody>
</table>
<p><font color="#993939">收到异步通知后,需返回success以表示服务器接收到了订单通知</font></p>
</div>
<div id="pay3" class="api_block">
<h3>
MD5签名算法
</h3>
<p>1、将发送或接收到的所有参数按照参数名ASCII码从小到大排序(a-z),sign、sign_type、和空值不参与签名!</p>
<p>2、将排序后的参数拼接成URL键值对的格式,例如 <code>a=b&amp;c=d&amp;e=f</code>,参数值不要进行url编码。</p>
<p>3、再将拼接好的字符串与商户密钥KEY进行MD5加密得出sign签名参数,<code>sign = md5 ( a=b&amp;c=d&amp;e=f + KEY )</code> (注意:+ 为各语言的拼接符,不是字符!),md5结果为小写。</p>
<p>4、具体签名与发起支付的示例代码可下载SDK查看。</p>
</div>
<div id="pay4" class="api_block">
<h3>
支付方式列表
</h3>
<table class="table table-bordered table-hover">
<thead><tr><th>调用值</th><th>描述</th></tr></thead>
<tbody>
<?php
foreach($paytype as $row){
echo '<tr><td>'.$row['name'].'</td><td>'.$row['showname'].'</td></tr>';
}
?>
</tbody>
</table>
</div>
<div id="pay5" class="api_block">
<h3>
设备类型列表
</h3>
<table class="table table-bordered table-hover">
<thead><tr><th>调用值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>pc</td><td>电脑浏览器</td></tr>
<tr><td>mobile</td><td>手机浏览器</td></tr>
<tr><td>qq</td><td>手机QQ内浏览器</td></tr>
<tr><td>wechat</td><td>微信内浏览器</td></tr>
<tr><td>alipay</td><td>支付宝客户端</td></tr>
<tr><td>jump</td><td>仅返回支付跳转url</td></tr>
</tbody>
</table>
</div>
<hr/>
<div id="api1" class="api_block">
<h3>
[API]查询商户信息
</h3>
<p>URL地址:<font color="#29389f"><?php echo $siteurl?>api.php?act=query&amp;pid={商户ID}&amp;key={商户密钥}</font></p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>操作类型</td><td>act</td><td>是</td><td>String</td><td>query</td><td>此API固定值</td></tr>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>商户密钥</td><td>key</td><td>是</td><td>String</td><td>89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i</td><td></td></tr>
</tbody>
</table>
<p>返回结果:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>返回状态码</td><td>code</td><td>Int</td><td>1</td><td>1为成功,其它值为失败</td></tr>
<tr><td>商户ID</td><td>pid</td><td>Int</td><td>1001</td><td>商户ID</td></tr>
<tr><td>商户密钥</td><td>key</td><td>String(32)</td><td>89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i</td><td>商户密钥</td></tr>
<tr><td>商户状态</td><td>active</td><td>Int</td><td>1</td><td>1为正常,0为封禁</td></tr>
<tr><td>商户余额</td><td>money</td><td>String</td><td>0.00</td><td>商户所拥有的余额</td></tr>
<tr><td>结算方式</td><td>type</td><td>Int</td><td>1</td><td>1:支付宝,2:微信,3:QQ,4:银行卡</td></tr>
<tr><td>结算账号</td><td>account</td><td>String</td><td>admin@pay.com</td><td>结算的支付宝账号</td></tr>
<tr><td>结算姓名</td><td>username</td><td>String</td><td>张三</td><td>结算的支付宝姓名</td></tr>
<tr><td>订单总数</td><td>orders</td><td>Int</td><td>30</td><td>订单总数统计</td></tr>
<tr><td>今日订单</td><td>order_today</td><td>Int</td><td>15</td><td>今日订单数量</td></tr>
<tr><td>昨日订单</td><td>order_lastday</td><td>Int</td><td>15</td><td>昨日订单数量</td></tr>
</tbody>
</table>
</div>
<div id="api3" class="api_block">
<h3>
[API]查询结算记录
</h3>
<p>URL地址:<font color="#29389f"><?php echo $siteurl?>api.php?act=settle&amp;pid={商户ID}&amp;key={商户密钥}</font></p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>操作类型</td><td>act</td><td>是</td><td>String</td><td>settle</td><td>此API固定值</td></tr>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>商户密钥</td><td>key</td><td>是</td><td>String</td><td>89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i</td><td></td></tr>
</tbody>
</table>
<p>返回结果:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>返回状态码</td><td>code</td><td>Int</td><td>1</td><td>1为成功,其它值为失败</td></tr>
<tr><td>返回信息</td><td>msg</td><td>String</td><td>查询结算记录成功!</td><td></td></tr>
<tr><td>结算记录</td><td>data</td><td>Array</td><td>结算记录列表</td><td></td></tr>
</tbody>
</table>
</div>
<div id="api4" class="api_block">
<h3>
[API]查询单个订单
</h3>
<p>URL地址:<font color="#29389f"><?php echo $siteurl?>api.php?act=order&amp;pid={商户ID}&amp;key={商户密钥}&amp;out_trade_no={商户订单号}</font></p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>操作类型</td><td>act</td><td>是</td><td>String</td><td>order</td><td>此API固定值</td></tr>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>商户密钥</td><td>key</td><td>是</td><td>String</td><td>89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i</td><td></td></tr>
<tr><td>系统订单号</td><td>trade_no</td><td>选择</td><td>String</td><td>20160806151343312</td><td></td></tr>
<tr><td>商户订单号</td><td>out_trade_no</td><td>选择</td><td>String</td><td>20160806151343349</td><td></td></tr>
</tbody>
</table>
<p>提示:系统订单号 和 商户订单号 二选一传入即可,如果都传入以系统订单号为准!</p>
<p>返回结果:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>返回状态码</td><td>code</td><td>Int</td><td>1</td><td>1为成功,其它值为失败</td></tr>
<tr><td>返回信息</td><td>msg</td><td>String</td><td>查询订单号成功!</td><td></td></tr>
<tr><td>易支付订单号</td><td>trade_no</td><td>String</td><td>2016080622555342651</td><td><?php echo $conf['sitename']?>订单号</td></tr>
<tr><td>商户订单号</td><td>out_trade_no</td><td>String</td><td>20160806151343349</td><td>商户系统内部的订单号</td></tr>
<tr><td>第三方订单号</td><td>api_trade_no</td><td>String</td><td>20160806151343349</td><td>支付宝微信等接口方订单号</td></tr>
<tr><td>支付方式</td><td>type</td><td>String</td><td>alipay</td><td><a href="#pay4" style="color:#4585d2">支付方式列表</a></td></tr>
<tr><td>商户ID</td><td>pid</td><td>Int</td><td>1001</td><td>发起支付的商户ID</td></tr>
<tr><td>创建订单时间</td><td>addtime</td><td>String</td><td>2016-08-06 22:55:52</td><td></td></tr>
<tr><td>完成交易时间</td><td>endtime</td><td>String</td><td>2016-08-06 22:55:52</td><td></td></tr>
<tr><td>商品名称</td><td>name</td><td>String</td><td>VIP会员</td><td></td></tr>
<tr><td>商品金额</td><td>money</td><td>String</td><td>1.00</td><td></td></tr>
<tr><td>支付状态</td><td>status</td><td>Int</td><td>0</td><td>1为支付成功,0为未支付</td></tr>
<tr><td>业务扩展参数</td><td>param</td><td>String</td><td></td><td>默认留空</td></tr>
<tr><td>支付者账号</td><td>buyer</td><td>String</td><td></td><td>默认留空</td></tr>
</tbody>
</table>
</div>
<div id="api5" class="api_block">
<h3>
[API]批量查询订单
</h3>
<p>URL地址:<font color="#29389f"><?php echo $siteurl?>api.php?act=orders&amp;pid={商户ID}&amp;key={商户密钥}</font></p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>操作类型</td><td>act</td><td>是</td><td>String</td><td>orders</td><td>此API固定值</td></tr>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>商户密钥</td><td>key</td><td>是</td><td>String</td><td>89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i</td><td></td></tr>
<tr><td>查询订单数量</td><td>limit</td><td>否</td><td>Int</td><td>20</td><td>返回的订单数量,最大50</td></tr>
<tr><td>页码</td><td>page</td><td>否</td><td>Int</td><td>1</td><td>当前查询的页码</td></tr>
</tbody>
</table>
<p>返回结果:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>返回状态码</td><td>code</td><td>Int</td><td>1</td><td>1为成功,其它值为失败</td></tr>
<tr><td>返回信息</td><td>msg</td><td>String</td><td>查询结算记录成功!</td><td></td></tr>
<tr><td>订单列表</td><td>data</td><td>Array</td><td></td><td>订单列表</td></tr>
</tbody>
</table>
</div>
<div id="api6" class="api_block">
<h3>
[API]提交订单退款
</h3>
<p><font color="red">需要先在商户后台开启订单退款API接口开关,才能调用该接口发起订单退款</font></p>
<p>URL地址:<font color="#29389f"><?php echo $siteurl?>api.php?act=refund</font></p>
<p>请求方式:<font color="#29389f">POST</font></p>
<p>请求参数说明:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>必填</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>商户ID</td><td>pid</td><td>是</td><td>Int</td><td>1001</td><td></td></tr>
<tr><td>商户密钥</td><td>key</td><td>是</td><td>String</td><td>89unJUB8HZ54Hj7x4nUj56HN4nUzUJ8i</td><td></td></tr>
<tr><td>易支付订单号</td><td>trade_no</td><td>特殊可选</td><td>String</td><td>20160806151343349021</td><td>易支付订单号</td></tr>
<tr><td>商户订单号</td><td>out_trade_no</td><td>特殊可选</td><td>String</td><td>20160806151343349</td><td>订单支付时传入的商户订单号,商家自定义且保证商家系统中唯一</td></tr>
<tr><td>退款金额</td><td>money</td><td>是</td><td>String</td><td>1.50</td><td>少数通道需要与原订单金额一致</td></tr>
</tbody>
</table>
<p><font color="#993939">注:trade_no、out_trade_no 不能同时为空,如果都传了以trade_no为准</font></p>
<p>返回结果:</p>
<table class="table table-bordered table-hover">
<thead><tr><th>字段名</th><th>变量名</th><th>类型</th><th>示例值</th><th>描述</th></tr></thead>
<tbody>
<tr><td>返回状态码</td><td>code</td><td>Int</td><td>1</td><td>1为成功,其它值为失败</td></tr>
<tr><td>返回信息</td><td>msg</td><td>String</td><td>退款成功</td><td></td></tr>
</tbody>
</table>
</div>
<div id="sdk0" class="api_block">
<h3>
SDK下载
</h3>
<blockquote>
<a href="./assets/files/SDK.zip?_v=1.3" style="color:blue">SDK.zip</a><br/>
SDK版本:V1.3
</blockquote>
</div>
+4
View File
@@ -0,0 +1,4 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?>
<script>window.location.href='/doc/index.html'</script>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="接口说明及规范"><a href="#接口说明及规范">接口说明及规范</a></h1><h2 id="协议规则"><a href="#协议规则">协议规则</a></h2><p>提交数据格式:<code>application/x-www-form-urlencoded</code></p><p>返回数据格式:<code>JSON</code></p><p>字符编码:<code>UTF-8</code></p><p>签名算法:<code>SHA256WithRSA</code></p><h2 id="V2升级说明"><a href="#V2升级说明">V2升级说明</a></h2><p>1、V2接口全面使用 RSA 签名算法;V1接口使用 MD5 签名算法</p><p>2、V2接口改用全新的接口地址,支持退款、代付等功能;V1接口使用submit.php和mapi.php提交订单</p><p>3、V2接口新增timestamp入参和返回值用于校验时间戳</p><h2 id="获取RSA密钥对"><a href="#获取RSA密钥对">获取RSA密钥对</a></h2><p>在 商户后台-&gt;个人资料-&gt;API信息 页面,点击【生成商户RSA密钥对】,生成后注意保存【商户私钥】。对接接口时只需要用到【平台公钥】与【商户私钥】。</p><h2 id="旧版接口文档"><a href="#旧版接口文档">旧版接口文档</a></h2><p><a href="/doc_old.html">查看V1旧版接口文档</a></p> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="查询商户信息"><a href="#查询商户信息">查询商户信息</a></h1><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/merchant/info</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">返回信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">失败或成功时返回提示</td></tr><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">商户状态</td><td align="left">status</td><td align="left">Int</td><td align="left">1</td><td align="left">0:已封禁,1:正常,2:待审核</td></tr><tr><td align="left">支付状态</td><td align="left">pay_status</td><td align="left">Int</td><td align="left">1</td><td align="left">0:关闭,1:开启</td></tr><tr><td align="left">结算状态</td><td align="left">settle_status</td><td align="left">Int</td><td align="left">1</td><td align="left">0:关闭,1:开启</td></tr><tr><td align="left">商户余额</td><td align="left">money</td><td align="left">String</td><td align="left">50.00</td><td align="left">单位:元</td></tr><tr><td align="left">结算方式</td><td align="left">settle_type</td><td align="left">Int</td><td align="left">1</td><td align="left"><a href="#结算方式列表">结算方式列表</a></td></tr><tr><td align="left">结算账户</td><td align="left">settle_account</td><td align="left">String</td><td align="left">alipay@alipay.com</td><td align="left"> </td></tr><tr><td align="left">结算账户姓名</td><td align="left">settle_name</td><td align="left">String</td><td align="left">张三</td><td align="left"> </td></tr><tr><td align="left">订单总数量</td><td align="left">order_num</td><td align="left">Int</td><td align="left">10</td><td align="left"> </td></tr><tr><td align="left">今日订单数量</td><td align="left">order_num_today</td><td align="left">Int</td><td align="left">3</td><td align="left"> </td></tr><tr><td align="left">昨日订单数量</td><td align="left">order_num_lastday</td><td align="left">Int</td><td align="left">2</td><td align="left"> </td></tr><tr><td align="left">今日订单收入</td><td align="left">order_money_today</td><td align="left">String</td><td align="left">45.00</td><td align="left">单位:元</td></tr><tr><td align="left">昨日订单收入</td><td align="left">order_money_lastday</td><td align="left">String</td><td align="left">35.00</td><td align="left">单位:元</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="结算方式列表"><a href="#结算方式列表">结算方式列表</a></h4><table><thead><tr><th align="left">状态值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">1</td><td align="left">支付宝</td></tr><tr><td align="left">2</td><td align="lef Line truncated
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="查询订单列表"><a href="#查询订单列表">查询订单列表</a></h1><blockquote>查询订单列表可用于对账或同步订单状态等</blockquote><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/merchant/orders</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">查询偏移</td><td align="left">offset</td><td align="left">是</td><td align="left">Int</td><td align="left">0</td><td align="left">从0开始</td></tr><tr><td align="left">每页条数</td><td align="left">limit</td><td align="left">是</td><td align="left">Int</td><td align="left">50</td><td align="left">最大不能超过50</td></tr><tr><td align="left">过滤订单状态</td><td align="left">status</td><td align="left">否</td><td align="left">Int</td><td align="left">1</td><td align="left">0:未支付,1:已支付</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">返回信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">失败或成功时返回提示</td></tr><tr><td align="left">订单列表</td><td align="left">data</td><td align="left">Array</td><td align="left"> </td><td align="left">具体参数可参考<a href="pay_query.html">订单查询</a></td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+241
View File
@@ -0,0 +1,241 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="统一下单接口"><a href="#统一下单接口">统一下单接口</a></h1><blockquote>此接口可用于服务器后端发起支付请求,会返回支付二维码链接、支付跳转url等。</blockquote><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/pay/create</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">接口类型</td><td align="left">method</td><td align="left">是</td><td align="left">String</td><td align="left">web</td><td align="left"><a href="#接口类型列表">接口类型列表</a></td></tr><tr><td align="left">设备类型</td><td align="left">device</td><td align="left">否</td><td align="left">String</td><td align="left">pc</td><td align="left">仅通用网页支付需要传 <a href="#设备类型列表">设备类型列表</a></td></tr><tr><td align="left">支付方式</td><td align="left">type</td><td align="left">是</td><td align="left">String</td><td align="left">alipay</td><td align="left"><a href="./paytype.html">支付方式列表</a></td></tr><tr><td align="left">商户订单号</td><td align="left">out_trade_no</td><td align="left">是</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">异步通知地址</td><td align="left">notify_url</td><td align="left">是</td><td align="left">String</td><td align="left">http://www.pay.com/notify_url.php</td><td align="left">服务器异步通知地址</td></tr><tr><td align="left">跳转通知地址</td><td align="left">return_url</td><td align="left">是</td><td align="left">String</td><td align="left">http://www.pay.com/return_url.php</td><td align="left">页面跳转通知地址</td></tr><tr><td align="left">商品名称</td><td align="left">name</td><td align="left">是</td><td align="left">String</td><td align="left">VIP会员</td><td align="left">如超过127个字节会自动截取</td></tr><tr><td align="left">商品金额</td><td align="left">money</td><td align="left">是</td><td align="left">String</td><td align="left">1.00</td><td align="left">单位:元,最大2位小数</td></tr><tr><td align="left">用户IP地址</td><td align="left">clientip</td><td align="left">是</td><td align="left">String</td><td align="left">192.168.1.100</td><td align="left">用户发起支付的IP地址</td></tr><tr><td align="left">业务扩展参数</td><td align="left">param</td><td align="left">否</td><td align="left">String</td><td align="left">没有请留空</td><td align="left">支付后原样返回</td></tr><tr><td align="left">被扫支付授权码</td><td align="left">auth_code</td><td align="left">否</td><td align="left">String</td><td align="left"> </td><td align="left">仅被扫支付需要传</td></tr><tr><td align="left">用户Openid</td><td align="left">sub_openid</td><td align="left">否</td><td align="left">String</td><td align="left"> </td><td align="left">仅JSAPI支付需要传</td></tr><tr><td align="left">公众号AppId</td><td align="left">sub_appid</td><td align="left">否</td><td align="left">String</td><td align="left"> </td><td align="left">仅JSAPI支付需要传</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">错误信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">失败时返回原因</td></tr><tr><td align="left">平台订单号</td><td align="left"> Line truncated
&quot;code&quot;: 0,
&quot;trade_no&quot;: &quot;20160806151343349&quot;,
&quot;pay_type&quot;: &quot;qrcode&quot;,
&quot;pay_info&quot;: &quot;weixin://wxpay/bizpayurl?pr=04IPMKM&quot;
}</code></pre><pre><code class="json">{
&quot;code&quot;: 0,
&quot;trade_no&quot;: &quot;20160806151343351&quot;,
&quot;pay_type&quot;: &quot;jsapi&quot;,
&quot;pay_info&quot;: &quot;{\&quot;appId\&quot;:\&quot;wx2421b1c4370ec43b\&quot;,\&quot;timeStamp\&quot;:\&quot;1395712654\&quot;,\&quot;nonceStr\&quot;:\&quot;e61463f8efa94090b1f366cccfbbb444\&quot;,\&quot;package\&quot;:\&quot;prepay_id=up_wx21201855730335ac86f8c43d1889123400\&quot;,\&quot;signType\&quot;:\&quot;RSA\&quot;,\&quot;paySign\&quot;:\&quot;oR9d8PuhnIc+YZ8cBHFCwfgpaK9gd7vaRvkYD7rthRAZ\&quot;}&quot;
}</code></pre><pre><code class="json">{
&quot;code&quot;: 0,
&quot;trade_no&quot;: &quot;2024072320222180092&quot;,
&quot;pay_type&quot;: &quot;scan&quot;,
&quot;pay_info&quot;: &quot;{\&quot;type\&quot;:\&quot;wxpay\&quot;,\&quot;trade_no\&quot;:\&quot;2024072320222180092\&quot;,\&quot;api_trade_no\&quot;:\&quot;4200002345202407238253501450\&quot;,\&quot;buyer\&quot;:\&quot;o9uAcc6VlZxhcujpKIqQuWWoDQc\&quot;,\&quot;money\&quot;:\&quot;1.00\&quot;}&quot;
}</code></pre><pre><code class="json">{
&quot;code&quot;: 0,
&quot;trade_no&quot;: &quot;2024072320222180018&quot;,
&quot;pay_type&quot;: &quot;wxplugin&quot;,
&quot;pay_info&quot;: &quot;{\&quot;appId\&quot;:\&quot;wxc237fd59fbb634ae\&quot;,\&quot;supplierId\&quot;:\&quot;123456\&quot;,\&quot;shopId\&quot;:\&quot;123456\&quot;,\&quot;orderId\&quot;:\&quot;2024072320222180092\&quot;}&quot;
}</code></pre><pre><code class="json">{
&quot;code&quot;: 0,
&quot;trade_no&quot;: &quot;2024072320222180018&quot;,
&quot;pay_type&quot;: &quot;wxapp&quot;,
&quot;pay_info&quot;: &quot;{\&quot;appId\&quot;:\&quot;wxbb48bac536053072\&quot;,\&quot;miniProgramId\&quot;:\&quot;gh_bf9cd8cf50b5\&quot;,\&quot;path\&quot;:\&quot;pages/fromAppPay/index?orderid=123456\&quot;,\&quot;extraData\&quot;:\&quot;\&quot;}&quot;
}</code></pre><h4 id="接口类型列表"><a href="#接口类型列表">接口类型列表</a></h4><table><thead><tr><th align="left">调用值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">web</td><td align="left">通用网页支付(会根据device判断,自动<br />返回跳转url/二维码/小程序跳转url等)</td></tr><tr><td align="left">jump</td><td align="left">跳转支付(仅会返回跳转url)</td></tr><tr><td align="left">jsapi</td><td align="left">JSAPI支付(小程序内支付使用,仅返回JSAPI参数,<br />需传入sub_openid和sub_appid参数)</td></tr><tr><td align="left">app</td><td align="left">APP支付(iOS/安卓APP内支付使用,<br />仅返回APP支付参数,或APP拉起微信小程序参数)</td></tr><tr><td align="left">scan</td><td align="left">付款码支付(需传入auth_code参数,<br />支付成功后返回订单信息)</td></tr><tr><td align="left">applet</td><td align="left">小程序支付(微信小程序内使用,<br />返回微信小程序插件参数或跳转小程序参数)</td></tr></tbody></table><h4 id="设备类型列表"><a href="#设备类型列表">设备类型列表</a></h4><table><thead><tr><th align="left">调用值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">pc</td><td align="left">电脑浏览器(默认)</td></tr><tr><td align="left">mobile</td><td align="left">手机浏览器</td></tr><tr><td align="left">qq</td><td align="left">手机QQ内浏览器</td></tr><tr><td align="left">wechat</td><td align="left">微信内浏览器</td></tr><tr><td align="left">alipay</td><td align="left">支付宝客户端</td></tr></tbody></table><h4 id="发起支付类型说明"><a href="#发起支付类型说明">发起支付类型说明</a></h4><table><thead><tr><th align="left">发起支付类型</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">jump</td><td align="left">返回支付跳转url</td></tr><tr><td align="left">html</td><td align="left">返回html代码,用于支付跳转</td></tr><tr><td align="left">qrcode</td><td align="left">返回支付二维码</td></tr><tr><td align="left">urlscheme</td><td align="left">返回微信/支付宝小程序跳转url scheme</td></tr><tr><td align="left">jsapi</td><td align="left">返回用于发起JSAPI支付的参数</td></tr><tr><td align="left">app</td><td align="left">返回用于发起APP支付的参数</td></tr><tr><td align="left">scan</td><td align="left">付款码支付成功,返回支付订单信息</td></tr><tr><td align="left">wxplugin</td><td align="left">返回要拉起的微信小程序插件参数,<br />用于未开通支付能力的小程序发起支付,</td></tr><tr><td align="left">wxapp</td><td align="left">返回要拉起的微信小程序和路径,<br />用于APP内拉起微信小程序支付</td></tr></tbody></table><h4 id="其他说明:"><a href="#其他说明:">其他说明:</a></h4><ul><li>代码中需根据接口返回的pay_type值来展示具体的支付页面,例如扫码页面等。如果不懂怎么展示支付页面,可在method传入jump,这样pay_type就只会返回jump,直接跳转支付即可。</li><li>付款码支付可不传支付类型type字段,会根据auth_code的数字自动判断支付类型。</li><li>微信小程序插件支付,不同支付平台拉起支付方式不一样,可联系客服获取对接小程序插件的文档。</li><li>APP拉起微信小程序可参考<a href="https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Launching_a_Mini_Program/Launching_a_Mini_Program.html">微信官方文档</a>。</li></ul> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="支付结果通知"><a href="#支付结果通知">支付结果通知</a></h1><h4 id="通知类型:"><a href="#通知类型:">通知类型:</a></h4><p>服务器异步通知(notify_url)、页面跳转通知(return_url)</p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>GET</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">平台订单号</td><td align="left">trade_no</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">商户订单号</td><td align="left">out_trade_no</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left"> </td></tr><tr><td align="left">接口订单号</td><td align="left">api_trade_no</td><td align="left">String</td><td align="left">40001249985198893</td><td align="left">微信支付宝返回的单号</td></tr><tr><td align="left">支付方式</td><td align="left">type</td><td align="left">String</td><td align="left">alipay</td><td align="left"><a href="./paytype.html">支付方式列表</a></td></tr><tr><td align="left">交易状态</td><td align="left">trade_status</td><td align="left">String</td><td align="left">TRADE_SUCCESS</td><td align="left">固定为TRADE_SUCCESS</td></tr><tr><td align="left">订单创建时间</td><td align="left">addtime</td><td align="left">String</td><td align="left">2024-07-01 16:47:32</td><td align="left"> </td></tr><tr><td align="left">订单完成时间</td><td align="left">endtime</td><td align="left">String</td><td align="left">2024-07-01 16:49:24</td><td align="left">仅完成才返回</td></tr><tr><td align="left">商品名称</td><td align="left">name</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">商品金额</td><td align="left">money</td><td align="left">String</td><td align="left">1.00</td><td align="left"> </td></tr><tr><td align="left">业务扩展参数</td><td align="left">param</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">支付用户标识</td><td align="left">buyer</td><td align="left">String</td><td align="left"> </td><td align="left">一般为openid</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回内容说明:"><a href="#返回内容说明:">返回内容说明:</a></h4><p>收到异步通知后,需返回success以表示服务器接收到了订单通知</p><h4 id="其他说明:"><a href="#其他说明:">其他说明:</a></h4><ul><li>商户系统代码内务必对返回的签名sign进行校验,并且判断trade_status的值是否等于TRADE_SUCCESS</li><li>支付平台可能会增加回调字段,验证签名时必须支持增加的扩展字段</li></ul> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="订单查询"><a href="#订单查询">订单查询</a></h1><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/pay/query</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">平台订单号</td><td align="left">trade_no</td><td align="left">特殊</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left">与商户订单号必传其一</td></tr><tr><td align="left">商户订单号</td><td align="left">out_trade_no</td><td align="left">特殊</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left">与平台订单号必传其一</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">错误信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">失败时返回原因</td></tr><tr><td align="left">平台订单号</td><td align="left">trade_no</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">商户订单号</td><td align="left">out_trade_no</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left"> </td></tr><tr><td align="left">接口订单号</td><td align="left">api_trade_no</td><td align="left">String</td><td align="left">40001249985198893</td><td align="left">微信支付宝返回的单号</td></tr><tr><td align="left">支付方式</td><td align="left">type</td><td align="left">String</td><td align="left">alipay</td><td align="left"><a href="./paytype.html">支付方式列表</a></td></tr><tr><td align="left">支付状态</td><td align="left">status</td><td align="left">Int</td><td align="left">1</td><td align="left"><a href="#支付状态列表">支付状态列表</a></td></tr><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">订单创建时间</td><td align="left">addtime</td><td align="left">String</td><td align="left">2024-07-01 16:47:32</td><td align="left"> </td></tr><tr><td align="left">订单完成时间</td><td align="left">endtime</td><td align="left">String</td><td align="left">2024-07-01 16:49:24</td><td align="left">仅完成才返回</td></tr><tr><td align="left">商品名称</td><td align="left">name</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">商品金额</td><td align="left">money</td><td align="left">String</td><td align="left">1.00</td><td align="left"> </td></tr><tr><td align="left">已退款金额</td><td align="left">refundmoney</td><td align="left">String</td><td align="left"> </td><td align="left">仅部分退款情况才返回</td></tr><tr><td align="left">业务扩展参数</td><td align="left">param</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">支付用户标识</td><td align="left">buyer</td><td align="left">String</td><td align="left"> </td><td align="left">一般为openid</td></tr><tr><td align="left">支付用户IP</td><td align="left">clientip</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left"> Line truncated
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="订单退款"><a href="#订单退款">订单退款</a></h1><blockquote>需要先在商户后台开启订单退款API接口开关,才能调用该接口发起订单退款</blockquote><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/pay/refund</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">平台订单号</td><td align="left">trade_no</td><td align="left">特殊</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left">与商户订单号必传其一</td></tr><tr><td align="left">商户订单号</td><td align="left">out_trade_no</td><td align="left">特殊</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left">与平台订单号必传其一</td></tr><tr><td align="left">退款金额</td><td align="left">money</td><td align="left">是</td><td align="left">String</td><td align="left">1.00</td><td align="left">单位:元</td></tr><tr><td align="left">商户退款单号</td><td align="left">out_refund_no</td><td align="left">否</td><td align="left">String</td><td align="left">20160806151343391</td><td align="left">可避免出现重复请求退款</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">返回信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">失败或成功时返回提示</td></tr><tr><td align="left">平台退款单号</td><td align="left">refund_no</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">商户退款单号</td><td align="left">out_refund_no</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left"> </td></tr><tr><td align="left">平台订单号</td><td align="left">trade_no</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">退款金额</td><td align="left">money</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">扣减商户余额</td><td align="left">reducemoney</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="其他说明:"><a href="#其他说明:">其他说明:</a></h4><ul><li>少数插件对接的第三方平台不支持部分金额退款</li></ul> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="订单退款查询"><a href="#订单退款查询">订单退款查询</a></h1><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/pay/refundquery</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">平台退款单号</td><td align="left">refund_no</td><td align="left">特殊</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left">与商户退款单号必传其一</td></tr><tr><td align="left">商户退款单号</td><td align="left">out_refund_no</td><td align="left">特殊</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left">与平台退款单号必传其一</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">错误信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">失败时返回提示</td></tr><tr><td align="left">平台退款单号</td><td align="left">refund_no</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">商户退款单号</td><td align="left">out_refund_no</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left"> </td></tr><tr><td align="left">平台订单号</td><td align="left">trade_no</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">商户订单号</td><td align="left">out_trade_no</td><td align="left">String</td><td align="left">20160806151343351</td><td align="left"> </td></tr><tr><td align="left">退款金额</td><td align="left">money</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">扣减商户余额</td><td align="left">reducemoney</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">退款状态</td><td align="left">status</td><td align="left">Int</td><td align="left"> </td><td align="left">0:失败,1:成功</td></tr><tr><td align="left">退款时间</td><td align="left">addtime</td><td align="left">String</td><td align="left">2024-07-01 16:47:32</td><td align="left"> </td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="页面跳转支付"><a href="#页面跳转支付">页面跳转支付</a></h1><blockquote>此接口可用于用户前台直接发起支付,使用form表单跳转或拼接成url跳转。</blockquote><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/pay/submit</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST 或 GET(推荐POST,不容易被劫持)</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">支付方式</td><td align="left">type</td><td align="left">是</td><td align="left">String</td><td align="left">alipay</td><td align="left"><a href="./paytype.html">支付方式列表</a></td></tr><tr><td align="left">商户订单号</td><td align="left">out_trade_no</td><td align="left">是</td><td align="left">String</td><td align="left">20160806151343349</td><td align="left"> </td></tr><tr><td align="left">异步通知地址</td><td align="left">notify_url</td><td align="left">是</td><td align="left">String</td><td align="left">http://www.pay.com/notify_url.php</td><td align="left">服务器异步通知地址</td></tr><tr><td align="left">跳转通知地址</td><td align="left">return_url</td><td align="left">是</td><td align="left">String</td><td align="left">http://www.pay.com/return_url.php</td><td align="left">页面跳转通知地址</td></tr><tr><td align="left">商品名称</td><td align="left">name</td><td align="left">是</td><td align="left">String</td><td align="left">VIP会员</td><td align="left">如超过127个字节会自动截取</td></tr><tr><td align="left">商品金额</td><td align="left">money</td><td align="left">是</td><td align="left">String</td><td align="left">1.00</td><td align="left">单位:元,最大2位小数</td></tr><tr><td align="left">业务扩展参数</td><td align="left">param</td><td align="left">否</td><td align="left">String</td><td align="left">没有请留空</td><td align="left">支付后原样返回</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="其他说明:"><a href="#其他说明:">其他说明:</a></h4><ul><li>支付方式(type)不传会跳转到收银台支付</li></ul> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+223
View File
@@ -0,0 +1,223 @@
<?php
if(!defined('IN_CRONLITE'))exit();
$paytype = $DB->getAll("SELECT * FROM pre_type WHERE status=1 ORDER BY id ASC");
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="支付方式列表"><a href="#支付方式列表">支付方式列表</a></h1><table><thead><tr><th align="left">调用值</th><th align="left">描述</th></tr></thead><tbody>
<?php
foreach($paytype as $row){
echo '<tr><td>'.$row['name'].'</td><td>'.$row['showname'].'</td></tr>';
}
?>
</tbody></table> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="SDK下载"><a href="#SDK下载">SDK下载</a></h1><h3 id="PHP-SDK"><a href="#PHP-SDK">PHP-SDK</a></h3><p><a href="/assets/files/SDK_2.0.zip">SDK.zip</a></p><p>版本:<code>V2.0</code></p> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="签名规则"><a href="#签名规则">签名规则</a></h1><h2 id="签名步骤"><a href="#签名步骤">签名步骤</a></h2><blockquote>对本平台接口发起的请求,需要进行签名。</blockquote><p>1、获取请求报文所有<strong>非空</strong>请求参数,不包括数组、字节类型参数,如文件、字节流,剔除<strong>sign</strong>、<strong>sign_type</strong>字段,并按照第一个字符的键值ASCII码递增排序(字母升序排序),如果遇到相同字符则按照第二个字符的键值ASCII码递增排序,以此类推。</p><p>2、将排序后的参数和对应值,组合成“<strong>参数=参数值</strong>”的格式,并且把这些参数用 <strong>&</strong> 字符连接起来,此时生成的字符串为待签名字符串。</p><p>3、使用<strong>商户私钥</strong>,对待签名字符串计算RSA签名(SHA256WithRSA),得到签名sign。</p><h2 id="验签步骤"><a href="#验签步骤">验签步骤</a></h2><blockquote>针对接口返回的数据,以及异步通知回调的数据,需进行验签。</blockquote><p>1、先根据签名步骤里面的1~2,获取到待签名字符串。</p><p>2、使用<strong>平台公钥</strong>,根据签名字符串sign,对待签名字符串与进行RSA验签(SHA256WithRSA)</p><h2 id="注意事项"><a href="#注意事项">注意事项</a></h2><p>1、商户私钥(private key)需填写到代码中供签名时使用。生成的私钥需妥善保管,避免遗失,不要泄露。</p><p>2、平台公钥(public key)用于接口返回数据、异步通知回调数据的验签。</p><p>3、具体发起支付相关流程的示例代码可下载SDK查看。</p> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="可用余额查询"><a href="#可用余额查询">可用余额查询</a></h1><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/transfer/balance</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">返回信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">成功或失败时返回提示</td></tr><tr><td align="left">商户可用余额</td><td align="left">available_money</td><td align="left">String</td><td align="left">1.00</td><td align="left">单位:元</td></tr><tr><td align="left">转账手续费率</td><td align="left">transfer_rate</td><td align="left">String</td><td align="left">3</td><td align="left">%</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="转账查询"><a href="#转账查询">转账查询</a></h1><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/transfer/query</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">转账交易号</td><td align="left">out_biz_no</td><td align="left">是</td><td align="left">String</td><td align="left">2016080615134334919</td><td align="left">转账接口传入或返回的交易号</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">返回信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">成功或失败时返回提示</td></tr><tr><td align="left">转账状态</td><td align="left">status</td><td align="left">Int</td><td align="left"> </td><td align="left">0:正在处理<br />1:转账成功<br />2:转账失败</td></tr><tr><td align="left">转账失败原因</td><td align="left">errmsg</td><td align="left">String</td><td align="left">收款方账户异常</td><td align="left">status=2 时才返回</td></tr><tr><td align="left">转账交易号</td><td align="left">out_biz_no</td><td align="left">String</td><td align="left">2016080615134334917</td><td align="left"> </td></tr><tr><td align="left">接口转账单号</td><td align="left">orderid</td><td align="left">String</td><td align="left">40001283951815782</td><td align="left">支付宝微信返回的转账单号</td></tr><tr><td align="left">转账完成时间</td><td align="left">paydate</td><td align="left">String</td><td align="left">2024-07-01 16:47:32</td><td align="left"> </td></tr><tr><td align="left">转账金额</td><td align="left">amount</td><td align="left">String</td><td align="left"> </td><td align="left">单位:元</td></tr><tr><td align="left">转账花费金额</td><td align="left">cost_money</td><td align="left">String</td><td align="left"> </td><td align="left">从商户可用余额扣减的金额</td></tr><tr><td align="left">转账备注</td><td align="left">remark</td><td align="left">String</td><td align="left"> </td><td align="left"> </td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table> <div id="mask" style="display:none" onclick="clickMask()"></div>
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+216
View File
@@ -0,0 +1,216 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>开发文档 - <?php echo $conf['sitename']?></title>
<!-- jQuery-->
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/1.12.4/jquery.min.js"></script>
<!-- layui -->
<link rel="stylesheet" href="//lf9-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/css/layui.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/layui/2.6.8/layui.js"></script>
<!-- zTree -->
<link rel="stylesheet" href="//lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/css/zTreeStyle/zTreeStyle.min.css" />
<script src="//lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/zTree.v3/3.5.42/js/jquery.ztree.core.min.js"></script>
<!-- SyntaxHighlighter -->
<script src="/assets/doc/js/shCore.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/assets/doc/css/shCoreDefault.css"/>
<!-- 自定义 -->
<link rel="stylesheet" href="/assets/doc/css/style.css" />
<script src="/assets/doc/js/home.js"></script>
<link rel="stylesheet" href="/assets/doc/css/docView.css" />
<script src="/assets/doc/js/docView.js"></script>
</head>
<body>
<!-- top-begin -->
<div id="navbar">
<div class="bg-blur" style="background: white!important;"></div>
<div class="navbar-body">
<ul class="layui-nav" lay-filter="">
<div class="navRight">
<li class="layui-nav-item layui-this" lay-unselect>
<a href="/" style="padding-right: 40px;">返回官网</a>
</li>
</div>
</ul>
<div class="nav-menu">
<a href="" class="logo"><img src="/assets/img/logo.png"/></a>
<a href="javascript:;" id="navMenuLeft"><i class="layui-icon layui-icon-spread-left"></i></a>
<a href="javascript:;" id="navMenuRight"><i class="layui-icon">&#xe61a;</i></a>
</div>
<div class="clear"></div>
</div>
</div>
<script>
function showMask()
{
$('#mask').show();
}
function hideMask()
{
$('#mask').hide();
}
function clickMask()
{
closeMenuLeft();
closeMenuRight();
}
function openMenuLeft()
{
$('#leftbar').addClass('show-item');
$('#navMenuLeft').addClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-spread-left');
ico.addClass('layui-icon-shrink-right');
showMask();
}
function closeMenuLeft()
{
$('#leftbar').removeClass('show-item');
$('#navMenuLeft').removeClass('active');
var ico = $('#navMenuLeft .layui-icon');
ico.removeClass('layui-icon-shrink-right');
ico.addClass('layui-icon-spread-left');
hideMask();
}
$('#navMenuLeft').click(function(){
var isShow = $('#leftbar').hasClass('show-item');
if(isShow)
{
closeMenuLeft();
}
else
{
closeMenuRight();
openMenuLeft();
}
});
function openMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').addClass('show-item')
$('#navMenuRight').addClass('active').find('i').html('&#xe619;');
showMask();
}
function closeMenuRight()
{
$('#navbar > .navbar-body > .layui-nav').removeClass('show-item')
$('#navMenuRight').removeClass('active').find('i').html('&#xe61a;');
hideMask();
}
$('#navMenuRight').click(function(){
var isShow = $('#navbar > .navbar-body > .layui-nav').hasClass('show-item');
if(isShow)
{
closeMenuRight();
}
else
{
closeMenuLeft();
openMenuRight();
}
});
</script>
<!-- top-end -->
<!-- left-begin -->
<div id="leftbar" class="layui-nav-side">
<div class="layui-tab layui-tab-brief" style="margin-top:0">
<ul class="layui-tab-title">
<li class="layui-this"><i class="layui-icon">&#xe705;</i> 目录</li>
</ul>
<div class="layui-tab-content">
<div class="layui-tab-item layui-show">
<ul id="treeDirectory" class="ztree showIcon"></ul>
</div>
<div class="layui-tab-item">
<div class="searchBox">
<div id="searchForm">
<div class="inputBox">
<input type="text" id="search-keyword" autocomplete="off" name="keyword" placeholder="搜索关键词" class="layui-input"/>
<i class="layui-icon input-icon">&#xe615;</i>
</div>
</div>
<ul id="treeSearch">
</ul>
<div class="searchResultNone">
<i class="layui-icon">&#xe615;</i>
<p>未搜索到结果</p>
</div>
</div>
</div>
</div>
<div class="copyright noScroll"><?php echo $conf['sitename']?></div>
</div>
</div>
<script id="searchListTemplate" type="text/html">
{{# layui.each(d, function(index, item){ }}
<li>
<a href="{{ item.url }}">
<h3>{{ item.searchedTitle }}</h3>
<p>{{ item.searchedContent }}</p>
</a>
</li>
{{# }) }}
</script>
<!-- left-end -->
<div id="body">
<div id="content_body" name="content_body" style="width:100%;height:100%;border:none;overflow: auto;">
<div id="article-content" class="markdown-body">
<script>
var catalogList = [{"id":1,"parent_id":0,"title":"接口说明","mdFileName":"index.md","url":"index.html","level":0},{"id":2,"parent_id":0,"title":"签名规则","mdFileName":"sign_note.md","url":"sign_note.html","level":0},{"id":3,"parent_id":0,"title":"支付方式列表","mdFileName":"paytype.md","url":"paytype.html","level":0},{"id":4,"parent_id":0,"title":"支付相关接口","level":0},{"id":5,"parent_id":4,"title":"页面跳转支付","mdFileName":"pay_submit.md","url":"pay_submit.html","level":1},{"id":6,"parent_id":4,"title":"统一下单接口","mdFileName":"pay_create.md","url":"pay_create.html","level":1},{"id":7,"parent_id":4,"title":"订单查询","mdFileName":"pay_query.md","url":"pay_query.html","level":1},{"id":8,"parent_id":4,"title":"订单退款","mdFileName":"pay_refund.md","url":"pay_refund.html","level":1},{"id":9,"parent_id":4,"title":"订单退款查询","mdFileName":"pay_refundquery.md","url":"pay_refundquery.html","level":1},{"id":10,"parent_id":4,"title":"支付结果通知","mdFileName":"pay_notify.md","url":"pay_notify.html","level":1},{"id":20,"parent_id":0,"title":"商户相关接口","level":0},{"id":21,"parent_id":20,"title":"查询商户信息","mdFileName":"merchant_info.md","url":"merchant_info.html","level":1},{"id":22,"parent_id":20,"title":"查询订单列表","mdFileName":"merchant_orders.md","url":"merchant_orders.html","level":1},{"id":30,"parent_id":0,"title":"代付相关接口","level":0},{"id":31,"parent_id":30,"title":"转账发起","mdFileName":"transfer_submit.md","url":"transfer_submit.html","level":1},{"id":32,"parent_id":30,"title":"转账查询","mdFileName":"transfer_query.md","url":"transfer_query.html","level":1},{"id":33,"parent_id":30,"title":"可用余额查询","mdFileName":"transfer_balance.md","url":"transfer_balance.html","level":1},{"id":50,"parent_id":0,"title":"SDK下载","pageTitle":"接口说明","mdFileName":"sdk.md","url":"sdk.html","level":0}];
initTree(catalogList);
</script>
<h1 id="转账发起"><a href="#转账发起">转账发起</a></h1><blockquote>平台需开通代付功能,且在商户后台开启代付API接口开关,才能调用本接口发起转账</blockquote><h4 id="请求地址:"><a href="#请求地址:">请求地址:</a></h4><p><code><?php echo $conf['apiurl']?>api/transfer/submit</code></p><h4 id="请求方式:"><a href="#请求方式:">请求方式:</a></h4><p>POST</p><h4 id="请求参数说明:"><a href="#请求参数说明:">请求参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">必填</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">商户ID</td><td align="left">pid</td><td align="left">是</td><td align="left">Int</td><td align="left">1001</td><td align="left"> </td></tr><tr><td align="left">转账方式</td><td align="left">type</td><td align="left">是</td><td align="left">String</td><td align="left">alipay</td><td align="left"><a href="#转账方式列表">转账方式列表</a></td></tr><tr><td align="left">收款方账号</td><td align="left">account</td><td align="left">是</td><td align="left">String</td><td align="left">alipay@alipay.com</td><td align="left">支付宝账号/微信OpenId/银行卡号</td></tr><tr><td align="left">收款方姓名</td><td align="left">name</td><td align="left">否</td><td align="left">String</td><td align="left">张三</td><td align="left">选填,传入则校验账号与该姓名是否匹配</td></tr><tr><td align="left">转账金额</td><td align="left">money</td><td align="left">是</td><td align="left">String</td><td align="left">1.00</td><td align="left">单位:元</td></tr><tr><td align="left">转账备注</td><td align="left">remark</td><td align="left">否</td><td align="left">String</td><td align="left"> </td><td align="left">选填</td></tr><tr><td align="left">转账交易号</td><td align="left">out_biz_no</td><td align="left">否</td><td align="left">String</td><td align="left">2016080615134334917</td><td align="left">传入后可避免出现重复请求转账<br />必须为19位纯数字,且以日期时间开头</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">是</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">是</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">是</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="返回参数说明:"><a href="#返回参数说明:">返回参数说明:</a></h4><table><thead><tr><th align="left">字段名</th><th align="left">变量名</th><th align="left">类型</th><th align="left">示例值</th><th align="left">描述</th></tr></thead><tbody><tr><td align="left">返回状态码</td><td align="left">code</td><td align="left">Int</td><td align="left">0</td><td align="left">0为成功,其它值为失败</td></tr><tr><td align="left">错误信息</td><td align="left">msg</td><td align="left">String</td><td align="left"> </td><td align="left">失败时返回转账失败原因</td></tr><tr><td align="left">转账状态</td><td align="left">status</td><td align="left">Int</td><td align="left"> </td><td align="left">0:正在处理<br />1:转账成功</td></tr><tr><td align="left">转账交易号</td><td align="left">out_biz_no</td><td align="left">String</td><td align="left">2016080615134334917</td><td align="left">可用于后续转账查询</td></tr><tr><td align="left">接口转账单号</td><td align="left">orderid</td><td align="left">String</td><td align="left">40001283951815782</td><td align="left">支付宝微信返回的转账单号</td></tr><tr><td align="left">转账完成时间</td><td align="left">paydate</td><td align="left">String</td><td align="left">2024-07-01 16:47:32</td><td align="left"> </td></tr><tr><td align="left">转账花费金额</td><td align="left">cost_money</td><td align="left">String</td><td align="left"> </td><td align="left">从商户可用余额扣减的金额</td></tr><tr><td align="left">当前时间戳</td><td align="left">timestamp</td><td align="left">String</td><td align="left">1721206072</td><td align="left">10位整数,单位秒</td></tr><tr><td align="left">签名字符串</td><td align="left">sign</td><td align="left">String</td><td align="left"> </td><td align="left">参考签名规则</td></tr><tr><td align="left">签名类型</td><td align="left">sign_type</td><td align="left">String</td><td align="left">RSA</td><td align="left">默认为RSA</td></tr></tbody></table><h4 id="转账方式列表"><a href="#转账方式列表"> Line truncated
</div>
</div>
</div>
<script>
$(function(){
var leftBarTimeout = null;
$('#leftbar').hover(function(e){
if(null !== leftBarTimeout)
{
clearTimeout(leftBarTimeout);
leftBarTimeout = null;
}
if(e.type === 'mouseenter')
{
$('.left-show-hide').fadeIn(250);
}
else if($('#leftbar').css('left') == '0px')
{
$('.left-show-hide').fadeOut(500);
}
});
});
function showLeftbar()
{
$('#leftbar').css('left', 0);
$('#body').css('padding-left','');
$('.left-show-hide > i.layui-icon').html('&#xe603;');
}
function hideLeftbar()
{
$('#leftbar').css('left', '-240px');
$('#body').css('padding-left',0);
$('.left-show-hide > i.layui-icon').html('&#xe602;');
$('.left-show-hide').fadeIn(250);
}
$('.left-show-hide').click(function(){
if($('#leftbar').css('left') == '0px')
{
hideLeftbar();
}
else
{
showLeftbar();
}
})
</script>
</body>
</html>
+63
View File
@@ -0,0 +1,63 @@
<?php
if(!defined('IN_CRONLITE'))exit();
require INDEX_ROOT.'head.php';
?>
<style type="text/css">
body{color:#000;}header { position: relative; }
.bann{ content:'';background-size:100%;background:#4280cb;background:-webkit-gradient(linear,0 0,0 100%,from(#4585d2),to(#4280cb));background:-moz-linear-gradient(top,#4585d2,#4280cb);background:linear-gradient(to bottom,#4585d2,#4280cb);top:0;left:0;z-index:-1;min-height:50px;width:100%}.fl .active{ color:#3F5061;background:#fff;border-color:#fff}
.api_block{margin-bottom: 4em;}
</style>
<div class="bann">
<div class="col-xs-12"style="text-align:center;">
<div class="h3"style="color:#ffffff;margin-top: 35px;margin-bottom: 30px;">开发文档</div>
<div style="clear:both;"></div>
</div><div style="clear:both;"></div>
</div>
<div class="container">
<!-- Docs nav
================================================== -->
<div class="row">
<div class="col-md-3 ">
<div id="toc" class="bc-sidebar">
<ul class="nav">
<hr/>
<li class="toc-h2"><a href="#pay0">页面跳转支付</a></li>
<li class="toc-h2"><a href="#pay1">API接口支付</a></li>
<li class="toc-h2"><a href="#pay2">支付结果通知</a></li>
<li class="toc-h2"><a href="#pay3">MD5签名算法</a></li>
<li class="toc-h2"><a href="#pay4">支付方式列表</a></li>
<li class="toc-h2"><a href="#pay5">设备类型列表</a></li>
<hr/>
<li class="toc-h2"><a href="#api1">[API]查询商户信息</a></li>
<li class="toc-h2"><a href="#api3">[API]查询结算记录</a></li>
<li class="toc-h2"><a href="#api4">[API]查询单个订单</a></li>
<li class="toc-h2"><a href="#api5">[API]批量查询订单</a></li>
<li class="toc-h2"><a href="#api6">[API]提交订单退款</a></li>
<hr/>
<li class="toc-h2"><a href="#sdk0">SDK下载</a></li>
<hr/>
</ul>
</div>
</div>
<div class="col-md-9">
<article class="post page">
<section class="post-content">
<hr/>
<?php include INDEX_ROOT.'doc.inc.php';?>
</section>
</article>
</div>
</div>
</div>
<?php require INDEX_ROOT.'foot.php';?>
+40
View File
@@ -0,0 +1,40 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?>
<div class="address">
<footer>
<div class="container">
<div class="row">
<div class="col-xs-12 col-md-8 col-lg-9">
<ul class="porduct">
<h4>产品</h4>
<li><a href="agreement.html" target="_blank">服务条款</a></li>
<li><a href="doc.html" target="_blank">开发文档</a></li>
</ul>
<ul class="price">
<h4>关于我们</h4>
<li><?php echo $conf['sitename']?>是<?php echo $conf['orgname']?>旗下的免签约支付产品</li>
</ul>
<ul class="about"style="width: 40%;padding-left: 22px;">
<h4>联系我们</h4>
<li><strong>QQ:</strong><a href="https://wpa.qq.com/msgrd?v=3&uin=<?php echo $conf['kfqq']?>&Site=pay&Menu=yes" target="_blank"><?php echo $conf['kfqq']?></a></li>
<li><strong>Email:</strong><a href="mailto:<?php echo $conf['email']?>"><?php echo $conf['email']?></a></li>
</ul>
</div>
</div>
<div class="xinxi">
<p><?php echo $conf['sitename']?>&nbsp;&nbsp;&copy;<?php echo date("Y")?>&nbsp;All Rights Reserved.&nbsp;&nbsp;<?php echo $conf['footer']?></p>
</div>
<script type="text/javascript">
if('ontouchend' in document.body && $(window).width() < 996){
$('.col-xs-12 .h2').css('text-align','center');
}
</script>
</div>
</footer>
</div>
</div>
</body>
</html>
+73
View File
@@ -0,0 +1,73 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8"/>
<title><?php echo $conf['title']?></title>
<meta name="keywords" content="<?php echo $conf['keywords']?>">
<meta name="description" content="<?php echo $conf['description']?>" />
<meta name="viewport"content="user-scalable=no, width=device-width">
<meta name="viewport"content="width=device-width, initial-scale=1"/>
<meta name="renderer"content="webkit">
<link rel="stylesheet" href="<?php echo $cdnpublic?>font-awesome/4.7.0/css/font-awesome.min.css" />
<link rel="stylesheet" href="<?php echo $cdnpublic?>twitter-bootstrap/3.4.1/css/bootstrap.min.css" type="text/css" />
<link rel="stylesheet"href="<?php echo STATIC_ROOT?>css/common.css">
<link rel="stylesheet"href="<?php echo STATIC_ROOT?>css/index-top.css">
<!--[if IE 9 ]><style type="text/css">#ie9{ display:block; }</style><![endif]-->
<script src="<?php echo $cdnpublic?>jquery/1.12.4/jquery.min.js"></script>
<script src="<?php echo $cdnpublic?>twitter-bootstrap/3.4.1/js/bootstrap.min.js"></script>
<script src="<?php echo $cdnpublic?>jquery-ujs/1.2.2/rails.min.js"async="true"></script>
<link rel="stylesheet"type="text/css"href="<?php echo STATIC_ROOT?>css/index.css"/>
</head>
<body>
<!--[if (gt IE 6)&amp;(lt IE 9)]>
<h1 style='color:red;text-align:center;'>
你好,浏览器版本过低,升级可正常访问,点击<a style="color:blue"href="http://browsehappy.com/">升级您的浏览器</a>
</h1>
<style type="text/css">#ielt9{ display: none; }h1{ height:300px;line-height: 300px;display:block; }header{ display: none; }#ie9{ display: block; }.tenxcloud-logo{ margin:50px auto 0;display:block}</style>
<![endif]-->
<div id="ielt9"style="height:100%">
<header>
<nav id="main-nav"class="navbar navbar-default"role="navigation">
<div class="container">
<div class="row">
<div class="navbar-header">
<button type="button"class="toggle navbar-toggle collapsed"data-toggle="collapse"data-target=".navbar-top-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="/"><span class="logo" style="background:url(assets/img/logo.png) no-repeat;background-size: auto 45px"></span></a>
</div>
<div class="navbar-collapse navbar-top-collapse collapse"style="height: 1px;">
<ul class="nav navbar-nav navbar-right c_navbar">
</ul>
<ul class="nav navbar-nav navbar-right z_navbar">
<li><a href="/">首页</a></li>
<li><a href="doc.html">开发文档</a></li>
<?php if($conf['test_open']){?>
<li><a href="/user/test.php">支付测试</a></li>
<?php }?>
<li><a href="/user/">用户中心</a></li>
</ul>
</div>
</div>
</div>
</nav>
</header>
<div id="ie9">你当前的浏览器版本过低,请您升级至IE9以上版本,以达到最佳效果,谢谢!<span class="closeIE">X</span></div>
<div id="scroll_Top">
<i class="fa fa-arrow-up"></i>
<a href="javascript:;"title="去顶部"class="TopTop">TOP</a></div>
<script>
$('.closeIE').click(function(event) {
$('#ie9').fadeOut();
});
</script>
+106
View File
@@ -0,0 +1,106 @@
<?php
if(!defined('IN_CRONLITE'))exit();
require INDEX_ROOT.'head.php';
?>
<section class="screen1">
<div id="myCarousel"class="carousel slide">
<div class="carousel-inner">
<div class="item active">
<div class="banner2 banner3">
<div class="container">
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-6">
<div class="ban2_img">
<div class="cloud_db_img"><img src="<?php echo STATIC_ROOT?>images/banner4.png"class="img-responsive"></div>
</div>
</div>
<div class="col-xs-12 col-sm-6 col-md-6">
<div class="ban2_text">
<div class="ban2_status docker">
<div class="ban2_middle">欢迎使用<?php echo $conf['sitename']?></div>
<div class="ban2_content">提供免签约支付宝、QQ钱包、微信支付</div>
<div class="ban2_experience">
<a href="/user/"class="btn proceed">登录商户</a>&nbsp;&nbsp;<a href="/user/reg.php"class="btn proceed">注册商户</a><br/>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- <ol class="carousel-indicators">
<li data-target="#myCarousel"data-slide-to="1"class="active"></li>
</ol>
<div id="trun_left"><a href="#myCarousel"data-slide="prev"class="_left">&lsaquo;</a></div>
<div id="trun_right"><a href="#myCarousel"data-slide="next"class="_right">&rsaquo;</a></div>-->
</div>
</section>
<section class="screen3">
<div class="container">
<div class="row">
<div class="col-xs-12 cloud_server">
<div class="h3"><?php echo $conf['sitename']?>®免签约支付产品</div>
</div>
<div class="col-xs-6 col-sm-4 col-md-4">
<div id="container_server">
<div class="server_item container_server"></div>
<div class="server-head h4">多种支付方式
<div class="h5 text-center">支持财付通 支付宝 微信 QQ钱包</div>
</div>
</div>
</div>
<div class="col-xs-6 col-sm-4 col-md-4">
<div id="server-arrange">
<div class="server_item arrange"></div>
<div class="server-head h4">对接费率超低
<div class="h5 text-center">每笔交易手续费低至2%,比其它平台更便宜</div>
</div>
</div>
</div>
<div class="col-xs-6 col-sm-4 col-md-4">
<div id="codebuild">
<div class="server_item codebuild"></div>
<div class="server-head h4">无需自主提现
<div class="h5 text-center">满一定金额即可自动提现到你的支付宝账号</div>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="screen4">
<div class="container">
<div class="row">
<div class="col-xs-12 blog-head">
<div class="h3">平台合作伙伴</div>
<div class="col-xs-3">
<img src="<?php echo STATIC_ROOT?>images/alipay.png" width="150">
</div>
<div class="col-xs-3">
<img src="<?php echo STATIC_ROOT?>images/wxpay.png" width="150">
</div>
<div class="col-xs-3">
<img src="<?php echo STATIC_ROOT?>images/qqpay.png" width="150">
</div>
<div class="col-xs-3">
<img src="<?php echo STATIC_ROOT?>images/tenpay.png" width="150">
</div>
</div>
</div>
</div>
</section>
<?php require INDEX_ROOT.'foot.php';?>
+40
View File
@@ -0,0 +1,40 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?><html class="weui-msg">
<head>
<meta charset="UTF-8">
<meta id="viewport" name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<title>错误提示</title>
<link href="/assets/css/weui.min.css" rel="stylesheet">
<style>.page{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}</style>
</head>
<body>
<div class="container">
<div class="page">
<div class="weui-msg">
<div class="weui-msg__icon-area">
<i class="weui-icon-warn weui-icon_msg"></i>
</div>
<div class="weui-msg__text-area">
<h2 class="weui-msg__title">该订单处理异常,已自动退款!</h2>
</div>
<div class="weui-msg__opr-area">
<p class="weui-btn-area">
<a href="javascript:;" class="weui-btn weui-btn_default" id="Close">关闭</a>
</p>
</div>
<div class="weui-msg__extra-area">
<div class="weui-footer"><p class="weui-footer__links"></p></div>
</div>
</div>
</div>
</div>
<script src="<?php echo $cdnpublic?>jquery/1.12.4/jquery.min.js"></script>
<script src="/paypage/js/close.js"></script>
<script>
document.body.addEventListener('touchmove', function (event) {
event.preventDefault();
},{ passive: false });
</script>
</body>
</html>
+78
View File
@@ -0,0 +1,78 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0">
<title>支付结果</title>
<style>
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{line-height:1.6;font-family:helvetica neue,Helvetica,Arial,sans-serif}*{margin:0;padding:0}a img{border:0}a{text-decoration:none}@font-face{font-weight:400;font-style:normal;font-family:weui;src:url(data:application/octet-stream;base64,AAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJAKExiAAABfAAAAFZjbWFw287vLAAAAggAAAIKZ2x5ZmXaQq8AAAQwAAAFpGhlYWQHgKtGAAAA4AAAADZoaGVhCAYD9gAAALwAAAAkaG10eC7gAAAAAAHUAAAANGxvY2EIMgmeAAAEFAAAABxtYXhwARsAPgAAARgAAAAgbmFtZeNcHtgAAAnUAAAB5nBvc3QXj6GyAAALvAAAALwAAQAAA+gAAABaA+gAAAAAA8MAAQAAAAAAAAAAAAAAAAAAAA0AAQAAAAEAAHNkzXdfDzz1AAsD6AAAAADST7NPAAAAANJPs08AAAAAA8MDwwAAAAgAAgAAAAAAAAABAAAADQAyAAQAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQObAZAABQAIAnoCvAAAAIwCegK8AAAB4AAxAQIAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABA6gHqDAPoAAAAWgPoAAAAAAABAAAAAAAAAAAAAAPoAAAD6AAAA+gAAAPoAAAD6AAAA+gAAAPoAAAD6AAAA+gAAAPoAAAD6AAAA+gAAAAAAAUAAAADAAAALAAAAAQAAAFqAAEAAAAAAGQAAwABAAAALAADAAoAAAFqAAQAOAAAAAQABAABAADqDP//AADqAf//AAAAAQAEAAAAAQACAAMABAAFAAYABwAIAAkACgALAAwAAAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAKAAAAAAAAAADAAA6gEAAOoBAAAAAQAA6gIAAOoCAAAAAgAA6gMAAOoDAAAAAwAA6gQAAOoEAAAABAAA6gUAAOoFAAAABQAA6gYAAOoGAAAABgAA6gcAAOoHAAAABwAA6ggAAOoIAAAACAAA6gkAAOoJAAAACQAA6goAAOoKAAAACgAA6gsAAOoLAAAACwAA6gwAAOoMAAAADAAAAAAAAAAuAGYAogDeARoBXgG2AeQCCgJGAogC0gACAAAAAAOvA60ACwAXAAABDgEHHgEXPgE3LgEDLgEnPgE3HgEXDgEB9bz5BQX5vLv5BQX5u6zjBQXjrKvjBQXjA60F+by7+gQE+ru8+fy0BOSrq+QEBOSrq+QAAAIAAAAAA7MDswALACEAAAEOAQceARc+ATcuAQMHBiIvASY2OwERNDY7ATIWFREzMhYB7rn7BQX7ucL+BQX+JHYPJg92DgwYXQsHJggKXRgMA7MF/sK5+wUF+7nC/v31mhISmhIaARcICwsI/ukaAAADAAAAAAOtA6sACwAZACIAAAEOAQceARc+ATcuAQMUBisBIiY1ETY3MxYXJy4BNDYyFhQGAfC49gUF9ri++gUF+poKBxwHCgEILAgBHxMZGSYZGQOrBfq+uPYFBfa4vvr9dQcKCgcBGggBAQg5ARklGRklGQAAAAACAAAAAAOSA8IADQAfAAABDgEHERYEFzYkNxEuARMBBi8BJj8BNh8BFjclNh8BFgH0gchUCQEDkZEBAwlUyHr+vwQDlAMCFQMDegMEAScEAxMDA8IePRz+w9TwJCTw1AE9HD3+3f7DAgOZBAMcBANdAgL2AwMTBAADAAAAAAOCA7AADQAZACIAAAEOAQcRHgEXPgE3ES4BBzMWFQcGByMmLwE0EyImNDYyFhQGAfV7wVEJ+YuL+QlRwZIuCQoBBCIEAQogDhISHBISA7AdOxr+z8vnIyPnywExGjv3AQjYBAEBBNgI/rETHBISHBMAAAACAAAAAAO9A70AFwAjAAABLgE/AT4BHwEWMjclNhYXJxYUBwEGJiclJgAnBgAHFgAXNgABIAUCBQMFEAdiBxIGARMHEQYCBgb+0AYQBgIcBf79x77/AAUFAQC+xwEDAccGEQcEBwIFTAQF5QYBBgIGEAb+1QYBBqzHAQMFBf79x77/AAUFAQAABAAAAAADrwOtAAsAFwAtADEAAAEOAQceARc+ATcuAQMuASc+ATceARcOARMFDgEvASYGDwEGFh8BFjI3AT4BJiIXFjEXAfW8+QUF+by7+QUF+bus4wUF46yr4wUF4yv+9gcRBmAGDwUDBQEGfQUQBgElBQELDxQBAQOtBfm8u/oEBPq7vPn8tATkq6vkBATkq6vkAiLdBQEFSQUCBgQHEQaABgUBIQUPCwQBAQAAAAABAAAAAAO7AzoAFwAAEy4BPwE+AR8BFjY3ATYWFycWFAcBBiInPQoGBwUIGQzLDSALAh0MHgsNCgr9uQscCwGzCyEOCw0HCZMJAQoBvgkCCg0LHQv9sQsKAAAAAAIAAAAAA7gDuAALABEAAAEGAgceARc2JDcmABMhETMRMwHuvP0FBf28xQEABQX/ADr+2i35A7gF/wDFvP0FBf28xQEA/d4BTv7fAAAEAAAAAAOvA60AAwAPABsAIQAAARYxFwMOAQceARc+ATcuAQMuASc+ATceARcOAQMjFTM1IwLlAQHyvPkFBfm8u/kFBfm7rOMFBeOsq+MFBePZJP3ZAoMBAQEsBfm8u/oEBPq7vPn8tATkq6vkBATkq6vkAi39JAADAAAAAAPDA8MACwAbACQAAAEGAAcWABc2ADcmAAczMhYVAw4BKwEiJicDNDYTIiY0NjIWFAYB7sD+/AUFAQTAyQEHBQX++d42CAoOAQUEKgQFAQ4KIxMaGiYaGgPDBf75ycD+/AUFAQTAyQEH5woI/tMEBgYEASwIC/4oGicZGScaAAAEAAAAAAPAA8AACAASAB4AKgAAAT4BNCYiBhQWFyMVMxEjFTM1IwMGAAcWBBc+ATcmAgMuASc+ATceARcOAQH0GCEhMCEhUY85Ock6K83++AQEAQjNuf8FBf/Hq+MEBOOrq+MEBOMCoAEgMSAgMSA6Hf7EHBwCsQT++M25/wUF/7nNAQj8pwTjq6vjBATjq6vjAAAAAAAQAMYAAQAAAAAAAQAEAAAAAQAAAAAAAgAHAAQAAQAAAAAAAwAEAAsAAQAAAAAABAAEAA8AAQAAAAAABQALABMAAQAAAAAABgAEAB4AAQAAAAAACgArACIAAQAAAAAACwATAE0AAwABBAkAAQAIAGAAAwABBAkAAgAOAGgAAwABBAkAAwAIAHYAAwABBAkABAAIAH4AAwABBAkABQAWAIYAAwABBAkABgAIAJwAAwABBAkACgBWAKQAAwABBAkACwAmAPp3ZXVpUmVndWxhcndldWl3ZXVpVmVyc2lvbiAxLjB3ZXVpR2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20AdwBlAHUAaQBSAGUAZwB1AGwAYQByAHcAZQB1AGkAdwBlAHUAaQBWAGUAcgBzAGkAbwBuACAAMQAuADAAdwBlAHUAaQBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0BAgEDAQQBBQEGAQcBCAEJAQoBCwEMAQ0BDgAGY2lyY2xlCGRvd25sb2FkBGluZm8Mc2FmZV9zdWNjZXNzCXNhZmVfd2FybgdzdWNjZXNzDnN1Y2Nlc3NfY2lyY2xlEXN1Y2Nlc3Nfbm9fY2lyY2xlB3dhaXRpbmcOd2FpdGluZ19jaXJjbGUEd2FybgtpbmZvX2NpcmNsZQAA) format('woff'),url(data:application/octet-stream;base64,d09GRgABAAAAAAfsAAsAAAAADHgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAAPwAAAFZAKExiY21hcAAAAXwAAAB/AAACCtvO7yxnbHlmAAAB/AAAA8cAAAWkZdpCr2hlYWQAAAXEAAAALgAAADYHgKtGaGhlYQAABfQAAAAcAAAAJAgGA/ZobXR4AAAGEAAAABAAAAA0LuAAAGxvY2EAAAYgAAAAHAAAABwIMgmebWF4cAAABjwAAAAfAAAAIAEbAD5uYW1lAAAGXAAAAR4AAAHm41we2HBvc3QAAAd8AAAAcAAAALwXj6GyeJxjYGRgYOBikGPQYWB0cfMJYeBg Line truncated
</style>
</head>
<body ontouchstart="">
<div class="container js_container">
<div class="page msg">
<div class="hd">
<!--<h1 class="page_title">Msg</h1>-->
</div>
<div class="bd">
<div class="weui_msg">
<div class="weui_icon_area"><i class="weui_icon_success weui_icon_msg"></i></div>
<div class="weui_text_area">
<h2 class="weui_msg_title">支付成功</h2>
<p class="weui_msg_desc">支付成功,请回到网站查看订单</p>
</div>
<div class="weui_opr_area">
<p class="weui_btn_area">
<a href="javascript:;" class="weui_btn weui_btn_primary" onclick="alert('请回到网站查看订单!')">确定</a>
<a href="javascript:;" class="weui_btn weui_btn_default" id="Close">关闭</a>
</p>
</div>
</div>
</div>
</div>
</div>
<script src="https://res.wx.qq.com/open/libs/zepto/1.1.6/zepto.js"></script>
<script src="<?php echo $cdnpublic?>jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript">
document.body.addEventListener('touchmove', function (event) {
event.preventDefault();
},{ passive: false });
if(navigator.userAgent.indexOf("AlipayClient") > -1){
function Alipayready(callback) {
if (window.AlipayJSBridge) {
callback && callback();
} else {
document.addEventListener('AlipayJSBridgeReady', callback, false);
}
}
Alipayready(function(){
$('.weui_opr_area #Close').click(function() {
AlipayJSBridge.call('popWindow');
});
})
}else if(navigator.userAgent.indexOf("MicroMessenger") > -1){
if (typeof WeixinJSBridge == "undefined") {
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', jsApiCall, false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', jsApiCall);
document.attachEvent('onWeixinJSBridgeReady', jsApiCall);
}
} else {
jsApiCall();
}
function jsApiCall() {
$('.weui_opr_area #Close').click(function() {
WeixinJSBridge.call('closeWindow');
});
}
}else{
$('.weui_opr_area #Close').click(function() {
window.opener=null;window.close();
});
}
</script>
</body>
</html>
Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

+32
View File
@@ -0,0 +1,32 @@
<?php
if(!defined('IN_CRONLITE'))exit();
?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN"><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>微信转QQ余额下单教程</title>
<link href="<?php echo $cdnpublic?>twitter-bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet"/>
<style type="text/css">
html{background:#eee}body{background:#fff;color:#333;font-family:"微软雅黑","Microsoft YaHei",sans-serif;margin:2em auto;padding:1em 2em;max-width:700px;-webkit-box-shadow:10px 10px 10px rgba(0,0,0,.13);box-shadow:10px 10px 10px rgba(0,0,0,.13);opacity:.8}h1{border-bottom:1px solid #dadada;clear:both;color:#666;font:24px "微软雅黑","Microsoft YaHei",,sans-serif;margin:30px 0 0 0;padding:0;padding-bottom:7px}#error-page{margin-top:50px}h3{text-align:center}#error-page p{font-size:9px;line-height:1.5;margin:25px 0 20px}#error-page code{font-family:Consolas,Monaco,monospace}ul li{margin-bottom:10px;font-size:9px}a{color:#21759B;text-decoration:none;margin-top:-10px}a:hover{color:#D54E21}.button{background:#f7f7f7;border:1px solid #ccc;color:#555;display:inline-block;text-decoration:none;font-size:9px;line-height:26px;height:28px;margin:0;padding:0 10px 1px;cursor:pointer;-webkit-border-radius:3px;-webkit-appearance:none;border-radius:3px;white-space:nowrap;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,.08);vertical-align:top}.button.button-large{height:29px;line-height:28px;padding:0 12px}.button:focus,.button:hover{background:#fafafa;border-color:#999;color:#222}.button:focus{-webkit-box-shadow:1px 1px 1px rgba(0,0,0,.2);box-shadow:1px 1px 1px rgba(0,0,0,.2)}.button:active{background:#eee;border-color:#999;color:#333;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,.5)}table{table-layout:auto;border:1px solid #333;empty-cells:show;border-collapse:collapse}th{padding:4px;border:1px solid #333;overflow:hidden;color:#333;background:#eee}td{padding:4px;border:1px solid #333;overflow:hidden;color:#333}
</style>
</head>
<body>
<h3>微信付款不了解决方案</h3>
<b style="color:red;"><b style="color:red;">当您遇到微信支付失败,说明支付通道维护了,请先使用QQ/支付宝付款!
<hr>下面我教大家如何把<font color="blue">微信钱转到QQ!然后使用QQ支付即可</font>,看下方截图!
<hr><font color="red" class="animation-pulse"> 微信支付方法:</font>
<br>
<br><font color="#000000">①:在<font color="red">微信公众号</font>搜QQ钱包
<br>
<br>②:可把余额直接转入你的QQ里
<br>
<br>③:使用QQ支付下单,就可以啦!</font></b>
</b>
<br>
<br>
<img src="./assets/img/wxtoqq.png" style=" width: 100%;">
<hr><a onclick="Javascript:history.go(-1);" class="btn btn-success btn-block">点击返回支付页面</a>
</body>
</html>