银联在线支付java代码 银联在线支付java代码

java工程师怎么在简历中描述银联支付,我在公司调用了银联支付你直接写做过网上银联支付功能就可以了 。你也可以写做过商城支付系统 。。
银联在线支付错误51000381、可能是网络营运商的问题,或者是网银在维护 。最好你打电话给客服,说是错误代码,他马上回答你 。
2、或者是你可以重新刷新一下,重新支付就可以了 。
3、银联在线支付、快捷支付中 , 由于第三方平台系统或数据传输问题导致支付失败 。如多次尝试仍无法正常支付,您可联系客服热线40088-95558反馈 。
java atm源代码解析先不说公司银联在线支付java代码的保密协议
一个项目的代码能在这里全贴出来银联在线支付java代码,还给银联在线支付java代码你讲解的清楚银联在线支付java代码?
、不过整个取款机流程是很简单的银联在线支付java代码 , 就是用户进行不同的操作,
java 调用 JNI驱动硬件执行相应的操作,关键就是组织各种类型的报文 ,
通过DTU发送到银联那边,比如说支付报文 , 冲正报文,日结报文……
这些报文的组织一般java 也只管传入JNI 中C组装好以后再调用 DTU驱动发送
java 这一块就是处理一些逻辑或者页面流转之类的、
代码是不可能贴的,保密协议还是有一定的约束力的
MyView myView = new MyView();
myView.anyView = this;
this.remove(this.xxPanel);
this.add(myView.getPanel());
this.repaint();
银联在线和支付宝,android应用怎么调用一、支付宝平台的集成
在技术集成之前 , 商户需要在进行注册,并签约安全支付服务 。签约成功后可获取支付宝分配的合作商户ID(PartnerID),账户ID(SellerID) , 调用接口时使用 。
支付细节的实现,主要通过支付宝提供的一个支付安全服务安装包alipay_plugin_20120428msp.apk,首次使用,首先检查是否安装此插件,没有会提示安装 。具体的支付细节,在这个插件内完成 。大部分的支付平台也都是采用的这种方式 。
调用支付宝的接口进行支付,主要有以下几个步骤
1.将商户ID,收款帐号,外部订单号,商品名称 , 商品介绍,价格,通知地址封装成订单信息
2.对订单信息进行签名
3.将订单信息,签名,签名方式封装成请求参数
4.调用pay方法 。
主要流程图如下:
支付接口pay方法的调用如下:
。。。
// start pay for this order.
// 根据订单信息开始进行支付
try {
// prepare the order info.
// 准备订单信息
String orderInfo = getOrderInfo(position);
// 这里根据签名方式对订单信息进行签名
String signType = getSignType();
String strsign = sign(signType, orderInfo);
Log.v("sign:", strsign);
// 对签名进行编码
strsign = URLEncoder.encode(strsign);
// 组装好参数
String info = orderInfo"sign=""\""strsign"\""""
getSignType();
Log.v("orderInfo:", info);
// start the pay.
// 调用pay方法进行支付
MobileSecurePayer msp = new MobileSecurePayer();
boolean bRet = msp.pay(info, mHandler, AlixId.RQF_PAY,this);
if (bRet) {
// show the progress bar to indicate that we have started
// paying.
// 显示“正在支付”进度条
closeProgress();
mProgress = BaseHelper.showProgress(this,null, "正在支付",false,
true);
} else
;
} catch (Exception ex) {
Toast.makeText(AlixDemo.this, R.string.remote_call_failed,
Toast.LENGTH_SHORT).show();
}
。。。
/**
* 向支付宝发送支付请求
*
* @param strOrderInfo
*订单信息
* @param callback
*回调handler
* @param myWhat
*回调信息
* @param activity
*目标activity
* @return
*/
public boolean pay(final String strOrderInfo,final Handler callback,
final int myWhat, final Activity activity) {
if (mbPaying)
return false;
mbPaying = true;
//
mActivity = activity;
// bind the service.
// 绑定服务
if (mAlixPay ==null) {
// 绑定安全支付服务需要获取上下文环境,
// 如果绑定不成功使用mActivity.getApplicationContext().bindService
// 解绑时同理
mActivity.getApplicationContext().bindService(
new Intent(IAlixPay.class.getName()),mAlixPayConnection,
Context.BIND_AUTO_CREATE);
}
// else ok.
// 实例一个线程来进行支付
new Thread(new Runnable() {
public void run() {
try {
// wait for the service bind operation to completely
// finished.
// Note: this is important,otherwise the next mAlixPay.Pay()
// will fail.
// 等待安全支付服务绑定操作结束
// 注意:这里很重要,否则mAlixPay.Pay()方法会失败
synchronized (lock) {
if (mAlixPay ==null)
lock.wait();
}
// register a Callback for the service.
// 为安全支付服务注册一个回调
mAlixPay.registerCallback(mCallback);
// call the MobileSecurePay service.
// 调用安全支付服务的pay方法
String strRet =mAlixPay.Pay(strOrderInfo);
BaseHelper.log(TAG,"After Pay: "strRet);
// set the flag to indicate that we have finished.
// unregister the Callback, and unbind the service.
// 将mbPaying置为false,表示支付结束
// 移除回调的注册 , 解绑安全支付服务
mbPaying = false;
mAlixPay.unregisterCallback(mCallback);
mActivity.getApplicationContext().unbindService(
mAlixPayConnection);
// send the result back to caller.
// 发送交易结果
Message msg = new Message();
msg.what = myWhat;
msg.obj = strRet;
callback.sendMessage(msg);
} catch (Exception e) {
e.printStackTrace();
// send the result back to caller.
// 发送交易结果
Message msg = new Message();
msg.what = myWhat;
msg.obj = e.toString();
callback.sendMessage(msg);
}
}
}).start();
return true;
}
调用了支付服务之后,有两种方式返回交易结果:
1.支付结果作为接口返回的字符串返回 。返回的参数包含在result字符串中,具体再进行解析 。
2.支付宝服务器通知 。商户需要提供一个http协议的接口,包含在参数里传递给安全支付,即notify_url 。支付宝服务器在支付完成后,会用POST方法调用notufy_url , 以xml为数据格式传输支付结果 。需要注意的是,商户服务器收到支付宝发的通知之后,需要返回一个纯字符串“success”,不然支付宝的服务器会持续调用七次回调url提供的接口 。
集成需要的交易费用方面0-1万元内是2.5%的费率,1-10万是2.4%,10-100万是2.2% , 100万以上2.0% 。
PS :亲测
AliPayInfo aliPayInfo=new AliPayInfo();
AliPay aliPay=new AliPay((Activity)OtherPayDlg.this.mContext, mHandler);
aliPay.pay(aliPayInfo.toString());
OtherPayDlg.this.dismiss();
出现问题一:按照说明文档导入alipay.jar出现AliPay 找不到,然后项目根目录下新建一个 libs文件夹 , 把要加的包放到这个目录下,右键 Build Path - Use as source folder
成功可以引用 , 但是没有弹出界面
二、财付通平台的集成
财付通的集成和支付宝的非常相似(腾讯的传统?→_→) 。财付通也是提供了一个财付通安全支付服务应用TenpayService.apk用于处理交易的细节 。对于此支付应用 , 财付通和支付宝的使用方式是一样的 。一种是捆绑预置,即打包在assets目录下,另一种是放到自己的服务器中 , 通过检查更新的方式动态加载 。实际集成中可采用二者结合方式,初次使用使用预置apk,之后检查更新动态下载 。
但是调用支付接口之前 , 增加了一个获取tokenid的过程,tokenid用于同财付通service进行交互 。过程如下:
1.用户在商户APP 选择商品,使用财付通支付
2.商户APP向商户server 请求使用财付通支付
3.商户server按照“支付初始化接口”的要求组织数据请求财付通“支付初始化接口”,接收初始化成功后返回的tokenid
4.商户server将生成的tokenid 返回给商户APP
5.商户APP使用tokenid 调用财付通支付service
6.财付通支付service 在验证tokenid 后向用户展示支付中心,显示订单信息及相关用户信息
7.用户在支付中心输入支付密码执行支付
8.财付通支付service 向财付通后台server 请求执行支付,并实时接收支付结果
9.支付成功后财付通支付service 向用户展示支付成功UI,在用户点击“返回商户网站”后回调商户App
10.财付通后台server 在支付成功后会通过“支付成功通知接口”在后台通知商户server 支付状态 。
接收支付接口返回结果方面,财付通对于方法返回值,不是直接返回的 , 而是通过handler回调,handler和msgId作为一个参数传入接口,支付接口pay()方法的返回值只是个true false,用于区分调用成功或者失败 。其实跟淘宝的方式大同小异 。对于notify_url,是财付通是通过get方式调用回调url,只返回支付成功的订单 。同样的,商户服务器在接收到财付通的调用之后,需要返回纯字符串“success”“fail”表示处理成功或失败 。
调用支付接口的代码如下:
//构造支付参数
HashMapString, String payInfo = new HashMapString, String();
payInfo.put("token_id",mTokenId);//财付通订单号token_id
payInfo.put("bargainor_id","1234567890"); //财付通合作商户ID,此为演示示例
//payInfo.put("order_type", "1");
payInfo.put("caller","com.tenpay.android.appDemo");
//去支付
tenpayHelper.pay(payInfo,mHandler, MSG_PAY_RESULT);
财付通的服务费率是1%,另外有相关的套餐可以优惠 。
三、易宝支付平台集成
与支付宝和财付通不同的是 , 易宝集成时,并没有提供一个支付应用apk , 只有一个jar包 。是一个library project 。因为在集成时 , 需要在manifest文件里面声明支付页面的activity 。同时在调用支付页面时,需要用startActivityForResult方式进入,支付结果会通过onActivityResult方法返回 。易宝同样支持服务端回调,但比较纠结的是,易宝的服务端回调url,不能在代码中传入 , 需要在易宝的网站进行配置 。只有支付成功时才会触发此回调,以get方式调用 。
调用支付接口的代码如下:其中customerNumber参数是签约之后才能获取到的 。requestId为调用方自定义的订单流水号 。
private void startPay(String customerNumber, String chennal) {
String amount = etAmount.getText().toString();
String productName = etProductName.getText().toString();
String productDesc = etProductDesc.getText().toString();
if(TextUtils.isEmpty(productName) || TextUtils.isEmpty(amount)) {
Toast.makeText(YeepayExampleActivity.this,"", Toast.LENGTH_SHORT);
}
Intent intent = new Intent(getBaseContext(), YeepayPlugin.class);
intent.putExtra("customerNumber", customerNumber);
Random random = new Random();
String time = ""System.currentTimeMillis();
String requestId = timerandom.nextInt() % 10000;
intent.putExtra("requestId", requestId);
intent.putExtra("amount",amount);
intent.putExtra("productName", productName);
intent.putExtra("time", time);
intent.putExtra("productDesc", (productDesc ==null) ? "" : productDesc);
intent.putExtra("support", chennal);
intent.putExtra("environment","ENV_TEST" );
StringBuilder builder = new StringBuilder();
builder.append(CUSTOMER_NUMBER).append("$");
builder.append(requestId).append("$");
builder.append(amount).append("$");
builder.append(productName).append("$");
builder.append(time);
String hmac = YeepayUtils.hmacSign(builder.toString(),KEY);
Log.e("YeepayExampleActivity","hmac"hmac);
intent.putExtra("hmac", hmac);
startActivityForResult(intent, 200);
}
易宝集成后的费率需要和易宝的客户经理面谈决定
四、银联在线支付集成
银联的支付应用同支付宝和财付通相同 , 采用的是独立apk的方式提供服务 。调用支付接口采用的startActivity的方式,相关参数通过bundle传递,调用示例如下:
bundle.putBoolean(USE_TEST_MODE,true);
bundle.putString(SP_ID,"0009");
bundle.putString(SECURITY_CHIP_TYPE,null);
【银联在线支付java代码 银联在线支付java代码】bundle.putString(SYS_PROVIDE,"00000001");
bundle.putString(PAY_DATA, payData);

Intent startIntent = new Intent();
// startIntent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
startIntent.putExtras(bundle);
startIntent.setClassName(UPPayUtils.PACKAGE_NAME,
UPPayUtils.ACTIVITY_NAME);
//activity.startActivityForResult(startIntent, UPPayUtils.STARTE_UPPAY);
activity.startActivity(startIntent);
与以上三种支付平台不同的是,银联支付接口的返回值是通过广播的形式发送的 。不支持商户服务端的回调url 。
银联错误代码!5131017什么意思!急急急这个代码一般在银联在线支付时跳转页面时出现银联在线支付java代码,应该是线上商户权限配置问题银联在线支付java代码,需要联系相关业务人员解决 。
怎么申请银联在线支付接口1、五证齐全:营业执照、税务登记证(国地税两证)、组织机构代码证、银行开户许可证 。
2、ICP备案:公司网站进行ICP备案 。这个应该不是问题 。上面两项通过之后基本上银行会和公司来进行协议盖章了,也算是合同,就说明已经生效了 。
3、签订完合同盖完章后基本上就会给商户下发接口文件,接口文件有多种语言,asp,java , .net等根据自己网站语言需要来索要即可 。
4、测试开通可以找相关接口开发人员及进行接口整合对接到公司网站上面即可进行交易了 。
扩展资料
异常应答说明
1、不返回报文体的情况:
版本号,交易类型、子类,签名方法,签名值等关键域未上送 , 返回“Invalid request.”; 交易类型和请求地址校验有误,返回“Invalid request URI.”
2、返回全部的请求报文,附加应答码和应答描述(包括的应答码有:01、02、03、10、11、32):
验证签名失败;
报文格式错(包含,必填域缺失,上送银联报文未定义的域,报文域的格式非法,交易时间超出范围);
签名失败;超时等其他系统异常
参考资料来源:中国银联-在线网关支付
关于银联在线支付java代码和银联在线支付java代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读