PayPal接口查询账户各币种余额

一、废话不多说,先上代码

import javax.net.ssl.HttpsURLConnection;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.math.BigDecimal;
import java.net.URL;
import java.net.URLDecoder;
import java.util.HashMap;
import java.util.Map;public class PayPalBalances {private final String USER_AGENT = "Mozilla/5.0";// 请求urlprivate String url;// 账户api用户名private String userName;// 账户api密码private String pwd;// 账户api signatureprivate String signature;/*** 返回币种选项* 0 只返回主币种* 1 返回所有拥有的币种*/private final Integer RETURN_ALL_CURRENCIES = 1;public PayPalBalances(){}public PayPalBalances(String url, String userName, String pwd, String signature) {this.url = url;this.userName = userName;this.pwd = pwd;this.signature = signature;}public void getPayPalBalances() throws Exception {URL obj = new URL(url);HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();//添加请求头con.setRequestMethod("POST");con.setRequestProperty("User-Agent", USER_AGENT);con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");String urlParameters = "USER=" + userName +"&PWD=" + pwd +"&SIGNATURE=" + signature +"&VERSION=109.0" +"&METHOD=GetBalance" +"&RETURNALLCURRENCIES" + RETURN_ALL_CURRENCIES;//发送Post请求con.setDoOutput(true);DataOutputStream wr = new DataOutputStream(con.getOutputStream());wr.writeBytes(urlParameters);wr.flush();wr.close();int responseCode = con.getResponseCode();System.out.println("\nSending 'POST' request to URL : " + url);System.out.println("Post parameters : " + urlParameters);System.out.println("Response Code : " + responseCode);BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));String inputLine;StringBuffer response = new StringBuffer();while ((inputLine = in.readLine()) != null) {response.append(inputLine);}in.close();// 处理返回值String responseData = response.toString();responseData = URLDecoder.decode(responseData, "UTF-8");String[] arr = responseData.split("&");Map<String, BigDecimal> balanceMap = new HashMap<>();BigDecimal[] amount = new BigDecimal[100];String[] currency = new String[100];int length = 0;for(String s : arr) {if(s.startsWith("L_AMT")) {s = s.replace("L_AMT","");Integer i = Integer.parseInt(s.substring(0, s.indexOf("=")));amount[i] = new BigDecimal(s.substring(s.indexOf("=")+1));length++;} else {if(s.startsWith("L_CURRENCYCODE")) {s = s.replace("L_CURRENCYCODE","");Integer j = Integer.parseInt(s.substring(0, s.indexOf("=")));currency[j] = s.substring(s.indexOf("=") + 1);}}}for(int i = 0; i < length; i++) {System.out.println("币种:" + currency[i] + " 余额:" + amount[i]);}}public static void main(String[] args) {// 沙盒 https://api-3t.sandbox.paypal.com/nvp// 正式 https://api-3t.paypal.com/nvpString url = "https://api-3t.sandbox.paypal.com/nvp";String userName = "userName";String pwd = "pwd";String signature = "sginature";PayPalBalances payPalBalances = new PayPalBalances(url, userName, pwd, signature);try {payPalBalances.getPayPalBalances();} catch (Exception e) {e.printStackTrace();}}
}

二、相关参数(userName, pwd, signature)

  1. 沙盒环境

    先登陆paypal开发者网站https://developer.paypal.com/developer/applications
    再选择以下菜单


点击需要查询账号的相关信息

  1. 正式环境

    通过访问链接https://www.paypal.com/businessprofile/mytools/apiaccess/firstparty获取

参考文档

  1. https://developer.paypal.com/docs/nvp-soap-api/get-balance-nvp/

PayPal接口查询账户各币种余额相关推荐

  1. delphi Mercadopago阿根廷支付(支持获取账户信息和余额、创建商店,商店查询、创建二维码、二维码查询、创建订单、订单查询、订单退款)

    下载链接:https://download.csdn.net/download/liushenglin123/11435379 [delphi Mercadopago阿根廷支付]支持获取账户信息和余额 ...

  2. PHP Paypal接口开发

    PayPal 快速.安全而又方便,是跨国交易的首选在线付款方式.现在PayPal可以和国内大部分信用卡关联,可以实现国人的跨国交易收支. 申请PayPal注册网址:https://www.paypal ...

  3. 银行管理系统java+mysql8,实现了转账,存钱,取钱,查询账户,开户,登录,自动生成密码账号等功能

    银行管理系统java+mysql8,实现了转账,存钱,取钱,查询账户,开户,登录,自动生成密码账号等功能 文章目录 银行管理系统java+mysql8,实现了转账,存钱,取钱,查询账户,开户,登录,自 ...

  4. 接口查询的数据生成excel上传到七牛云

    接口查询的数据生成excel上传到七牛云 一.注册七牛云并新建一个存储空间 我们公司已经有一个七牛云的账号,登录进去之后创建一个新的对象存储空间.命名为eval_mobile.酒会有一个默认的融合 C ...

  5. php百度人脸识别做登陆,php调用百度人脸识别接口查询数据库人脸信息实现验证登录功能...

    博主在进行鼎食城毕业设计时,需要实现一个人脸识别登录功能,想到可以利用百度的人脸识别接口来完成,于是便去下载了百度的识别SDK,我用的是PHP,需要的的可以去下载其他版本,以下是识别效果: 用户在开始 ...

  6. 基于C#的ArcEngine二次开发教程(03):ArcEngine的接口查询技术底层分析

    目录 1 准备工作 2 类和接口的实现 2.1 定义接口IArea 2.2 定义接口ILength 2.3 定义类calc并显式实现IArea和ILength接口 3 主窗体的展示 3.1 直接通过接 ...

  7. php接口统计,EKL PHP 调取_search接口查询登录统计

    EKL PHP 调取_search接口查询登录统计 发布时间:2020-07-11 20:14:56 来源:51CTO 阅读:312 作者:脱变_JACK error_reporting( E_ALL ...

  8. PayPal个人高级账户收款有限制和限额吗?

    PayPal个人账户收款有限额吗?这是很多刚注册的商家都会咨询的一个问题,首先PayPal的个人账户分为个人买家的个人账户和个人卖家的高级账户,个人卖家的高级账户收款是没有限额的.高级账户可以用来绑定 ...

  9. access自动自动累计余额_在Access2007数据库中如何使用查询来计算累计余额

    数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用.在这一篇教程里面,小编主要和大家简单的介绍一下:在Access2007数据库中如何 ...

  10. 通达信收费接口查询可申购新股c++源码分享

    有很多股民在做股票交易时为了实现盈利会借助第三三方炒股工具帮助自己,那么通达信收费接口就是人们常用到的,今天小编来分享一下通达信收费接口查询可申购新股c++源码: std::cout << ...

最新文章

  1. js变量作用域和变量提升
  2. 【学习笔记】 Python - Pandas
  3. CSS背景属性彻底研究
  4. 火狐浏览器的导出和导入
  5. 推荐一些经典的编程从入门到进阶的书籍-附下载资源
  6. 《Java语言程序设计》(基础篇原书第10版)第十三章复习题答案
  7. 数据结构 复习攻略 新手必看
  8. 晶振封装与频率对照表
  9. cad怎么画立体图形教学_CAD怎么画三维图形? cad绘制立体的室内装修图的教程
  10. Mac下简单socket连接代码
  11. 【原创】基于JavaWeb的医院预约挂号系统(医院挂号管理系统毕业设计)
  12. 如何在Vue项目中引入ArcGIS JavaScript API​ 创建三维可视化地图(含vue项目创建教程)
  13. Adobe Acrobat XI经验总结(更于2022.5.11)
  14. Visual Studio 2013如何显示代码行数
  15. 算法题---leetcode-1
  16. 生存之道,每个人都值得尊敬
  17. swift 学习资料大全
  18. post_thumbnail_html,WordPress 常用函数 / the_post_thumbnail
  19. 【Maven】无法下载私服 SNAPSHOT 版本 jar 包
  20. Trunk的精解,分析tagged和untagged

热门文章

  1. 【转】Apache——世界使用排名第一的Web服务器
  2. 时钟晶振电路EMC设计标准电路详解
  3. Python全栈自动化测试--Pycharm专业版安装
  4. 跨域 SameSite secure
  5. MySQL 检索 JSON 字段
  6. 基于iTextSharp库的PDF文件拆分、合并(C#)
  7. ios ipa文件分析
  8. 双引号后面要加句号吗_引号里应不应该用句号,双引号后的句号在前还是在后?...
  9. JavaScript制作游戏摇杆方向盘
  10. 阿里P4 - P14技能要求及对应薪资曝光