人生倒计时
- 今日已经过去小时
- 这周已经过去天
- 本月已经过去天
- 今年已经过去个月
支付接口代码怎么查(支付接口调用)
接入支付宝支付SDK
接入支付宝支付SDK
(使用浏览器扫码进入在线客服窗口)
复制联系方式
可以说支付宝支付接入是所有SDK最好接入的,没有之一。
客户端不用签名,也不用管包名,也不用管签名文件,就接口返回订单,把订单交给支付宝SDK调用就行,成功或者失败都在当前界面返回给你。你再去通知接口。
支付流程图
官方文档地址
!支付宝支付官方文档地址
按照文档说明接入SDK和相关配置,在这就不重复了
客户端支付关键代码===》支付接口的调用(调起支付弹框)
记住支付接口的调用必须在独立的非ui线程中执行,即需新开线程里面调用。可以想官方demo一样用new Thread方式。
下面我给出用Observable方式示例代码
在PayUtils中
/**
* desc:支付宝支付
* Created by congge on 2018/8/27 17:20
* @param orderInfo 接口返回的订单
**/
public static void aliPay(final Activity activity, final String orderInfo, final OrderListener orderListener) {
Observable.just(orderInfo)
.map(new Function () {
@Override
public String apply(String orderInfo) throws Exception {
//用户在商户app内部点击付款,是否需要一个loading做为在钱包唤起之前的过渡,这个值设置为true
return new PayTask(activity).pay(orderInfo, true);
}
})
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer () {
@Override
public void accept(String payResult) throws Exception {
orderListener.onPayResult(payResult);
}
});
}
支付结果返回处理
返回例子:
resultStatus={9000};memo={};result={{"alipay_trade_app_pay_response":{"code":"10000","msg":"Success","app_id":"2016091300503896","auth_app_id":"2016091300503896","charset":"utf-8","timestamp":"2018-08-28 17:51:11","out_trade_no":"nVElbd74TW6WnEyxQwvX8A","total_amount":"0.01","trade_no":"2018082821001004680500208879","seller_id":"2088102175487650"},"sign":"W0Hg9k4GxL8Oaxymvqk2i65WNDQxYp6HGve32ek6VjSRnymmI3GQTjpQVbZuDzvjcwQ/HIkM97PoBGAVlTmi/wiJcqDgSSDzDY7AFnNN0OcK0ehWGwKQINA4IDGh51A7yY/vYKmR0VW+2OwGhlRPPMMZtQOEqh8a9/aIijzT6ZLwy9Hl4ayG/fVKhdC1VdckF6+C25BFNp3fIxarg5tfEunm7N9iWngKCUsnP+IZz05OHdvynimgYPcBnbBERHG97GVqRT/EdBWTQyIDMc0LemScAYxJixTVgXDkRddQjzWZ7HgLdBfjs0nXY24puHudT76ERxVY+8NkoKle/QI+FA==","sign_type":"RSA2"}}
也可以自己打log看看
处理示例代码:
//支付宝支付
PayUtils.aliPay(this, result.getSignDataStr(), new PayUtils.OrderListener() {
@Override
public void onPayResult(String payResult) {
PayResult pr = new PayResult(payResult);
String rs = pr.getResultStatus();
String r = pr.getResult();
switch (rs) {
case AliPayResultStatus.PAY_SUCCESS:
ToastUtils.show(R.string.pay_success);
//通知接口支付成功
break;
case AliPayResultStatus.PAY_PROCESSING:
case AliPayResultStatus.PAY_UNKNOWN:
ToastUtils.show(R.string.pay_fail);
//支付可能成功,要接口去查询
break;
default:
ToastUtils.show(R.string.pay_fail);
//通知接口支付失败,取消订单
}
}
});
上面方法中:
//通知接口支付成功 //支付可能成功,要接口去查询 //通知接口支付失败,取消订单。根据你产品需求要不要通知你服务器做的操作。正常是要的,用来改变订单状态
PayResult.class
public class PayResult {
private String resultStatus;
private String result;
private String memo;
public PayResult(String rawResult) {
if (TextUtils.isEmpty(rawResult))
return;
String[] resultParams = rawResult.split(";");
for (String resultParam : resultParams) {
if (resultParam.startsWith("resultStatus")) {
resultStatus = gatValue(resultParam, "resultStatus");
}
if (resultParam.startsWith("result")) {
result = gatValue(resultParam, "result");
}
if (resultParam.startsWith("memo")) {
memo = gatValue(resultParam, "memo");
}
}
}
@Override
public String toString() {
return "resultStatus={" + resultStatus + "};memo={" + memo
+ "};result={" + result + "}";
}
private String gatValue(String content, String key) {
String prefix = key + "={";
return content.substring(content.indexOf(prefix) + prefix.length(),
content.lastIndexOf("}"));
}
public String outOrder() {
String order = ""out_trade_no"";
if (result.contains(order)) {
String begin = result.substring(result.indexOf(order));
String ss = begin.split(",")[0];
String newS = ss.replace(""", "")
.replace("}", "")
.replace(":", "")
.replace("out_trade_no", "");
try {
return newS;
} catch (Exception e) {
e.printStackTrace();
}
}
return "";
}
/**
* @return the resultStatus
*/
public String getResultStatus() {
return resultStatus;
}
/**
* @return the memo
*/
public String getMemo() {
return memo;
}
/**
* @return the result
*/
public String getResult() {
return result;
}}
最后给下支付返回码表
AliPayResultStatus.class
public class AliPayResultStatus {
/**
* 订单支付成功,唯一肯定是支付成功的
*/
public static final String PAY_SUCCESS = "9000";
/**
* 正在处理中,支付结果未知(有可能已经支付成功),请查询商户订单列表中订单的支付状态
*/
public static final String PAY_PROCESSING = "8000";
/**
* 订单支付失败
*/
public static final String PAY_FAIL = "4000";
/**
* 重复请求
*/
public static final String PAY_REPEAT = "5000";
/**
* 用户中途取消
*/
public static final String PAY_PROCESS_CANCEL = "6001";
/**
* 网络连接出错
*/
public static final String PAY_NET_ERROR = "6002";
/**
* 支付结果未知(有可能已经支付成功),请查询商户订单列表中订单的支付状态
*/
public static final String PAY_UNKNOWN = "6004";}
还有一个直接弃用沙箱调试模式,否则提示支付失败也有可能不知道错在那,怕金额大,和接口商量,测试服务器就用0.01测试。

支付宝小组代码怎么用的
支付宝小组代码是支付宝提供的一种支付方式,用户可以通过支付宝小组代码来实现快速支付。使用支付宝小组代码的步骤如下:
1. 用户打开支付宝钱包,点击“扫一扫”,扫描商家的支付宝小组代码;
2. 输入支付金额,点击“确认支付”;
3. 输入支付密码,点击“确认支付”;
4. 支付成功,商家即可收到支付的金额。
微信支付api中的支付密钥Key在哪查看?
微信支付api中的支付密钥Key的功能需要时在微信公众号里申请,查看方法如下:
1.首先登陆你的微信公众号或者微信小程序的后台。确认“微信支付”部分的状态是“已申请”。否则按照后台的提示进行申请工作,这个过程一般需要若干个工作日才能完成。
2.在你申请的过程中,会收到一封来自微信支付的邮件。邮件名称类似《恭喜您成功通过微信支付商户资料审核》。邮件内容类似下图,图中有三个信息:微信支付商户号、商户平台登录帐号、商户平台登录密码。其中“微信支付商户号”就是我们需要的“商户ID”。
3.继续将邮件向下拉,会看到“前往商户平台完成入驻”的按钮,点击按钮,并使用上一步得到的商户平台登录帐号、商户平台登录密码,登陆商户平台网站。如果微信有其他操作提示,按照提示操作完成入驻。
4.然后点击页面顶部自己的账号,进入账户中心。
5.再点击左侧的API安全,进入API安全管理的页面。如果页面提示你安装操作证书一类的,就按照提示安装,然后重新进入这个页面。
6.然后在该页的“API密钥”部分,点击“设置密钥”,可以看到密钥内容,该密钥就是我们需要的“支付Key”。本步操作只能在开发阶段、产品没有上线前操作,产品上线后切忌点击“设置密钥”,否则会影响线上的支付功能。
扩展资料:
api支付接口程序支持网银支付在线交易庞大化网银支付是现代电子商务活动中最典型和最成熟的支付方式,它功能齐全、覆盖范围广,货币流通顺畅,使用网银支付已是在线交易中最普遍最实用的一种方式。支持网银支付,开通了最安全最广泛的交易快捷通道,有了网银支付这一功能,我们的在线交易就得到全面完善,从而就给人们带来多种多样的在线交易方式。支游戏充值不管玩家想给自己的游戏充多少钱,丰富多样的支付方式都可以满足他们的需求。
参考资料:普通直连商户号与APPID自助授权绑定-微信支付商户平台
工行支付接口总是提示 : 信息代码:96113424 提示信息:订单数据有误 跪求原因!!!
工行支付接口提示 “信息代码:96113424 提示信息:订单数据有误 ”这属于工行那边验证服务的问题。解决方法:
可以先将钱充值到支付宝,再利用支付宝给手机充值。打开支付宝的官方网站;
在页面右上角,点击“登录”链接。如果没有支付宝帐号,可以点击“注册”链接先注册;
登陆后,在打开的页面中点击充值;
在打开的页面中,在网上银行一栏中选择中国工商银行,然后点击下一步;
在打开的页面中,输入金额,然后点击下一步。注意不用勾选《同意快捷支付服务及相关协议》,如果勾选了,将使用快捷支付;
接下来,就跳到工行的网银支付页面了。按照以往的方式支付成功后,支付宝里就有钱了;
然后,我们可以重新打开中国联通或中国移动的网上营业厅交话费。在支付页面中,选择支付宝付款就行了。
1、中国工商银行,全称中国工商银行股份有限公司(ICBC),简称工行(港交所代码1398;上交所代码601398),成立于1984年1月1日,总部在北京。
2、该行是在中国人民银行专门行使中央银行职能的同时,从中国人民银行分离出来的专业银行,另外还是香港中资金融股的七行五保(前称六行三保)之一。中国工商银行是中央四大行之一,全球市值最大的银行,世界五百强企业之一。
3、2013年4月18日,《福布斯》2013全球企业2000强榜单出炉,中国工商银行成为全球最大企业。2014年2月14日,世界百强银行名单出炉,中国工商银行名列榜首,其资产数额达3.062万亿美元。2014年7月7日,工行以427亿美元利润,排世界500强公司第25位。
信用卡的商户类别代码如何查看
可以通过刷卡的小票查看商户类别码,小票上的商户编号的第8-11位代表的就是商户的行业。
商户类别码规则:
商户编码格式(商户号格式),银行卡收单管理办法规定,商户号为15位:机构代码(3位)+地区代码(4位)+商户类型(4位)+商户顺序号(4位)。
收单机构为特约商户设定的商户类别码必须与商户的主营业务保持一致。
1、商户主营业务是指对商户日常营业收入贡献最大的业务类型。
2、当商户营业执照采用列举方式描述时,可将经营范围第一项排序作为商户的主营业务;当商户营业执照未列明具体经范围时,收单机构有责任在商户资信调查中,确定商户的主营业务。
3、当商户主营业务或经营范围发生变更,收单机构应及时对商户重新编码。
4、对于营业执照列出多种经营范围,且收单机构选取其中最低扣率标准的业务项目为商户设定类别码,收单机构应能证明该业务项目为商户的主营业务。
扩展资料
收单编码的法律要求:
《银行卡收单业务管理办法》
第二十五条 收单机构应当根据特约商户受理银行卡交易的真实场景,按照相关银行卡清算机构和发卡银行的业务规则和管理要求,正确选用交易类型,准确标识交易信息并完整发送,确保交易信息的完整性、真实性和可追溯性。
交易信息至少应包括:直接提供商品或服务的商户名称、类别和代码,受理终端(网络支付接口)类型和代码,交易时间和地点(网络特约商户的网络地址),交易金额,交易类型和渠道,交易发起方式等。网络特约商户的交易信息还应当包括商品订单号和网络交易平台名称。
特约商户和受理终端(网络支付接口)的编码应当具有唯一性。
参考资料来源:百度百科-MCC
参考资料来源:百度百科-银行卡收单业务管理办法

