汇率查询V2
<p>[TOC]</p>
<h3>接口调用说明</h3>
<ul>
<li>提供实时汇率换算,外汇报价,货币汇率以及币种之间的汇率转换。广泛用于国际结算、银行汇率查询应用、开展跨国贸易、投资等参考场景。数据来源于公开的信息发布平台。汇率行情仅供参考,旨在提供市场动态和信息,不构成任何形式的投资建议。</li>
</ul>
<h4>请求方式</h4>
<p>如接口没有单独说明,所有接口均为:<strong>POST</strong></p>
<h4>请求格式</h4>
<p>如接口没有单独说明,所有接口均为:<strong>application/x-www-form-urlencoded</strong></p>
<h4>请求参数</h4>
<p>请求参数包括公共参数和业务参数(业务参数见具体接口说明)
调用接口时,需要把<strong>公共参数</strong>和<strong>业务参数</strong>一并放在<strong>请求参数</strong>中提交</p>
<h5>公共请求参数</h5>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>appId</td>
<td>String</td>
<td>是</td>
<td>服务商分配的唯一标识</td>
</tr>
<tr>
<td>timestamp</td>
<td>Long</td>
<td>是</td>
<td>当前时间戳(毫秒)</td>
</tr>
<tr>
<td>sign</td>
<td>String</td>
<td>是</td>
<td>签名,详见<a href="#签名算法">签名算法说明</a></td>
</tr>
</tbody>
</table>
<p><a name="签名算法"></a></p>
<h5>签名算法说明</h5>
<pre><code>sign = sha256(appId + appSecret + timestamp)</code></pre>
<p>用服务商分配的 <strong>appId</strong>、服务商分配的 <strong>appSecret</strong>,当前时间戳(毫秒) <strong>timestamp</strong>,按上述顺序拼接成字符串,再进行 <strong>sha256</strong> 哈希得到。如下:</p>
<pre><code class="language-java">String appId = &quot;xyzxy2121zxyz&quot;;
String timestamp = &quot;1555378976238&quot;;
String appSecret = &quot;efcefcef1121cefcefc1212121&quot;;
String str = appId + appSecret + timestamp;
String sign = sha256(str);</code></pre>
<h4>返回说明</h4>
<h5>公共返回字段说明</h5>
<p>所有接口均返回以下公共字段:</p>
<table>
<thead>
<tr>
<th>字段名</th>
<th><div style="width:420px">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>code</td>
<td>返回码,详见:code返回码说明</td>
</tr>
<tr>
<td>msg</td>
<td>code对应的描述</td>
</tr>
<tr>
<td>charge</td>
<td>计费标志 true为计费,false为不计费</td>
</tr>
<tr>
<td>taskNo</td>
<td>本次请求号</td>
</tr>
<tr>
<td>data</td>
<td>返回具体结果,object类型,详见data返回字段描述</td>
</tr>
</tbody>
</table>
<p><a name="公共code返回码说明"></a></p>
<h5>公共code返回码说明</h5>
<p>所有接口公共返回码如下:</p>
<table>
<thead>
<tr>
<th>code</th>
<th><div style="width:420px;">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td>成功</td>
</tr>
<tr>
<td>201</td>
<td>查无数据</td>
</tr>
<tr>
<td>400</td>
<td>参数错误</td>
</tr>
<tr>
<td>404</td>
<td>接口地址不正确</td>
</tr>
<tr>
<td>500</td>
<td>系统维护,请稍候再试</td>
</tr>
<tr>
<td>601</td>
<td>接口未开通</td>
</tr>
<tr>
<td>602</td>
<td>账号停用</td>
</tr>
<tr>
<td>604</td>
<td>接口停用</td>
</tr>
<tr>
<td>606</td>
<td>调用超限,请稍候再试</td>
</tr>
<tr>
<td>607</td>
<td>ip不在白名单</td>
</tr>
<tr>
<td>609</td>
<td>请求过于频繁,请稍候再试</td>
</tr>
<tr>
<td>610</td>
<td>请求超时</td>
</tr>
<tr>
<td>999</td>
<td>其他,以实际返回为准</td>
</tr>
</tbody>
</table>
<h3>实时汇率转换</h3>
<h4>接口描述</h4>
<ul>
<li>币种间的汇率转换,比如金额人民币100元,可以转为多少美元(或其他外币)。</li>
</ul>
<h4>请求地址</h4>
<p><code>https://api.jumdata.com/exchange-rate-v2/convert</code></p>
<h4>业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:400px">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>fromCode</td>
<td>String</td>
<td>是</td>
<td>源货币类型 <a href='#exchangeCode'>详见货币代码表</a></td>
</tr>
<tr>
<td>toCode</td>
<td>String</td>
<td>是</td>
<td>目标货币类型 <a href='#exchangeCode'>详见货币代码表</a></td>
</tr>
<tr>
<td>money</td>
<td>String</td>
<td>是</td>
<td>转换的金额,单位元</td>
</tr>
</tbody>
</table>
<h4>成功返回样例</h4>
<pre><code class="language-json">{
&quot;code&quot;: 200,//返回码,详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;,//code对应的描述
&quot;charge&quot;: true,//计费标志
&quot;taskNo&quot;: &quot;825091389158520001104287&quot;,//本次唯一请求号
&quot;data&quot;: {
&quot;money&quot;: &quot;120.043880&quot;,//换算后金额
&quot;to_name&quot;: &quot;欧元&quot;,//目标货币名称
&quot;from&quot;: &quot;GBP&quot;,//源货币类型
&quot;exchange&quot;: &quot;1.199000&quot;,//当前汇率
&quot;to&quot;: &quot;EUR&quot;,//目标货币类型
&quot;from_name&quot;: &quot;英镑&quot;,//源货币名称
&quot;updatetime&quot;: &quot;2024-10-29 14:00:04&quot; //更新时间
}
}</code></pre>
<h4>失败返回样例</h4>
<pre><code class="language-json">{
&quot;msg&quot;: &quot;源货币类型不能为空&quot;,
&quot;code&quot;: 400
}</code></pre>
<h3>单货币列表</h3>
<h4>接口描述</h4>
<ul>
<li>由于公布数据源的延迟,部分货币会有不定滞后时间,以updatetime字段更新为准,如实时性要求较高请使用实时汇率转换接口。</li>
</ul>
<h4>请求地址</h4>
<p><code>https://api.jumdata.com/exchange-rate-v2/single</code></p>
<h4>业务参数</h4>
<table>
<thead>
<tr>
<th>名称</th>
<th>类型</th>
<th>必须</th>
<th><div style="width:400px">说明</div></th>
</tr>
</thead>
<tbody>
<tr>
<td>fromCode</td>
<td>String</td>
<td>是</td>
<td>需要查询的货币代码 <a href='#exchangeCode'>详见货币代码表</a></td>
</tr>
<tr>
<td>toCode</td>
<td>String</td>
<td>否</td>
<td>目标货币类型,会单独返回toCode对应的汇率信息,默认CNY <a href='#exchangeCode'>详见货币代码表</a></td>
</tr>
</tbody>
</table>
<h4>成功返回样例</h4>
<pre><code class="language-json">{
&quot;code&quot;: 200, //返回码,详见code返回码说明
&quot;msg&quot;: &quot;成功&quot;, //code对应的描述
&quot;charge&quot;: true, //计费标志
&quot;taskNo&quot;: &quot;825091389158520001104287&quot;, //本次唯一请求号
&quot;data&quot;: {
&quot;name&quot;: &quot;英镑&quot;, //货币名称
&quot;currency&quot;: &quot;GBP&quot;, //货币代码
&quot;toData&quot;: {//参数toCode对应的汇率信息
&quot;rate&quot;: &quot;1.293100&quot;,
&quot;name&quot;: &quot;美元&quot;,
&quot;updatetime&quot;: &quot;2025-04-01 17:25:06&quot;
},
&quot;list&quot;: {
&quot;FJD&quot;: {
&quot;rate&quot;: &quot;2.946800&quot;, //汇率
&quot;name&quot;: &quot;斐济元&quot;, //目标货币名称
&quot;updatetime&quot;: &quot;2024-10-29 04:37:55&quot; //更新时间
},
&quot;MXN&quot;: {
&quot;rate&quot;: &quot;25.949600&quot;,
&quot;name&quot;: &quot;墨西哥比索&quot;,
&quot;updatetime&quot;: &quot;2024-10-29 13:54:37&quot;
}
}
}
}</code></pre>
<h4>失败返回样例</h4>
<pre><code class="language-json">{
&quot;msg&quot;: &quot;源货币类型不能为空&quot;,
&quot;code&quot;: 400
}</code></pre>
<p><a name="exchangeCode"></a></p>
<h3>货币代码表</h3>
<table>
<thead>
<tr>
<th>货币代码</th>
<th>货币名称</th>
</tr>
</thead>
<tbody>
<tr>
<td>CNY</td>
<td>人民币</td>
</tr>
<tr>
<td>USD</td>
<td>美元</td>
</tr>
<tr>
<td>EUR</td>
<td>欧元</td>
</tr>
<tr>
<td>JPY</td>
<td>日元</td>
</tr>
<tr>
<td>HKD</td>
<td>港币</td>
</tr>
<tr>
<td>KRW</td>
<td>韩元</td>
</tr>
<tr>
<td>RUB</td>
<td>卢布</td>
</tr>
<tr>
<td>GBP</td>
<td>英镑</td>
</tr>
<tr>
<td>SGD</td>
<td>新加坡元</td>
</tr>
<tr>
<td>TWD</td>
<td>新台币</td>
</tr>
<tr>
<td>CAD</td>
<td>加拿大元</td>
</tr>
<tr>
<td>AUD</td>
<td>澳大利亚元</td>
</tr>
<tr>
<td>BRL</td>
<td>巴西雷亚尔</td>
</tr>
<tr>
<td>INR</td>
<td>印度卢比</td>
</tr>
<tr>
<td>CHF</td>
<td>瑞士法郎</td>
</tr>
<tr>
<td>THB</td>
<td>泰国铢</td>
</tr>
<tr>
<td>MOP</td>
<td>澳门元</td>
</tr>
<tr>
<td>NZD</td>
<td>新西兰元</td>
</tr>
<tr>
<td>ZAR</td>
<td>南非兰特</td>
</tr>
<tr>
<td>SEK</td>
<td>瑞典克朗</td>
</tr>
<tr>
<td>IDR</td>
<td>印尼卢比</td>
</tr>
<tr>
<td>MXN</td>
<td>墨西哥比索</td>
</tr>
<tr>
<td>ARS</td>
<td>阿根廷比索</td>
</tr>
<tr>
<td>MYR</td>
<td>林吉特</td>
</tr>
<tr>
<td>OMR</td>
<td>阿曼里亚尔</td>
</tr>
<tr>
<td>EGP</td>
<td>埃及镑</td>
</tr>
<tr>
<td>PKR</td>
<td>巴基斯坦卢比</td>
</tr>
<tr>
<td>PYG</td>
<td>巴拉圭瓜拉尼</td>
</tr>
<tr>
<td>BHD</td>
<td>巴林第纳尔</td>
</tr>
<tr>
<td>PAB</td>
<td>巴拿马巴尔博亚</td>
</tr>
<tr>
<td>BMD</td>
<td>百慕大元</td>
</tr>
<tr>
<td>BGN</td>
<td>保加利亚列弗</td>
</tr>
<tr>
<td>ISK</td>
<td>冰岛克朗</td>
</tr>
<tr>
<td>PLN</td>
<td>波兰兹罗提</td>
</tr>
<tr>
<td>BOB</td>
<td>玻利维亚诺</td>
</tr>
<tr>
<td>BWP</td>
<td>博茨瓦纳普拉</td>
</tr>
<tr>
<td>DKK</td>
<td>丹麦克朗</td>
</tr>
<tr>
<td>PHP</td>
<td>菲律宾比索</td>
</tr>
<tr>
<td>COP</td>
<td>哥伦比亚比索</td>
</tr>
<tr>
<td>CUP</td>
<td>古巴比索</td>
</tr>
<tr>
<td>KZT</td>
<td>哈萨克斯坦坚戈</td>
</tr>
<tr>
<td>ANG</td>
<td>荷兰盾</td>
</tr>
<tr>
<td>GHS</td>
<td>加纳塞地</td>
</tr>
<tr>
<td>CZK</td>
<td>捷克克朗</td>
</tr>
<tr>
<td>ZWL</td>
<td>津巴布韦元</td>
</tr>
<tr>
<td>QAR</td>
<td>卡塔尔里亚尔</td>
</tr>
<tr>
<td>KWD</td>
<td>科威特第纳尔</td>
</tr>
<tr>
<td>HRK</td>
<td>克罗地亚库纳</td>
</tr>
<tr>
<td>KES</td>
<td>肯尼亚先令</td>
</tr>
<tr>
<td>LVL</td>
<td>拉脱维亚拉特</td>
</tr>
<tr>
<td>LAK</td>
<td>老挝基普</td>
</tr>
<tr>
<td>LBP</td>
<td>黎巴嫩镑</td>
</tr>
<tr>
<td>LTL</td>
<td>立陶宛立特</td>
</tr>
<tr>
<td>RON</td>
<td>罗马尼亚列伊</td>
</tr>
<tr>
<td>MUR</td>
<td>毛里求斯卢比</td>
</tr>
<tr>
<td>MNT</td>
<td>蒙古图格里克</td>
</tr>
<tr>
<td>BDT</td>
<td>孟加拉塔卡</td>
</tr>
<tr>
<td>PEN</td>
<td>秘鲁新索尔</td>
</tr>
<tr>
<td>MAD</td>
<td>摩洛哥迪拉姆</td>
</tr>
<tr>
<td>NOK</td>
<td>挪威克朗</td>
</tr>
<tr>
<td>SAR</td>
<td>沙特里亚尔</td>
</tr>
<tr>
<td>LKR</td>
<td>斯里兰卡卢比</td>
</tr>
<tr>
<td>SOS</td>
<td>索马里先令</td>
</tr>
<tr>
<td>TZS</td>
<td>坦桑尼亚先令</td>
</tr>
<tr>
<td>TND</td>
<td>突尼斯第纳尔</td>
</tr>
<tr>
<td>TRY</td>
<td>土耳其里拉</td>
</tr>
<tr>
<td>GTQ</td>
<td>危地马拉格查尔</td>
</tr>
<tr>
<td>UYU</td>
<td>乌拉圭比索</td>
</tr>
<tr>
<td>HUF</td>
<td>匈牙利福林</td>
</tr>
<tr>
<td>JMD</td>
<td>牙买加元</td>
</tr>
<tr>
<td>ILS</td>
<td>以色列谢克尔</td>
</tr>
<tr>
<td>JOD</td>
<td>约旦第纳尔</td>
</tr>
<tr>
<td>VND</td>
<td>越南盾</td>
</tr>
<tr>
<td>CLP</td>
<td>智利比索</td>
</tr>
<tr>
<td>PGK</td>
<td>巴布亚新几内亚基那</td>
</tr>
<tr>
<td>KPW</td>
<td>朝鲜圆</td>
</tr>
<tr>
<td>LSL</td>
<td>莱索托洛提</td>
</tr>
<tr>
<td>LYD</td>
<td>利比亚第纳尔</td>
</tr>
<tr>
<td>RWF</td>
<td>卢旺达法郎</td>
</tr>
<tr>
<td>MMK</td>
<td>缅甸元</td>
</tr>
<tr>
<td>MWK</td>
<td>马拉维克瓦查</td>
</tr>
<tr>
<td>NIO</td>
<td>尼加拉瓜科多巴</td>
</tr>
<tr>
<td>NPR</td>
<td>尼泊尔卢比</td>
</tr>
<tr>
<td>SBD</td>
<td>所罗门群岛元</td>
</tr>
<tr>
<td>SCR</td>
<td>塞舌尔法郎</td>
</tr>
<tr>
<td>BND</td>
<td>文莱元</td>
</tr>
<tr>
<td>SYP</td>
<td>叙利亚镑</td>
</tr>
<tr>
<td>DZD</td>
<td>阿尔及利亚第纳尔</td>
</tr>
<tr>
<td>AED</td>
<td>阿联酋迪拉姆</td>
</tr>
<tr>
<td>BBD</td>
<td>巴巴多斯元</td>
</tr>
<tr>
<td>AFN</td>
<td>阿富汗尼</td>
</tr>
<tr>
<td>ALL</td>
<td>阿尔巴尼亚勒克</td>
</tr>
<tr>
<td>AMD</td>
<td>亚美尼亚德拉姆</td>
</tr>
<tr>
<td>AOA</td>
<td>安哥拉宽扎</td>
</tr>
<tr>
<td>AWG</td>
<td>阿鲁巴盾弗罗林</td>
</tr>
<tr>
<td>AZN</td>
<td>阿塞拜疆新马纳特</td>
</tr>
<tr>
<td>BAM</td>
<td>波斯尼亚马尔卡</td>
</tr>
<tr>
<td>BIF</td>
<td>布隆迪法郎</td>
</tr>
<tr>
<td>BSD</td>
<td>巴哈马元</td>
</tr>
<tr>
<td>BTN</td>
<td>不丹努扎姆</td>
</tr>
<tr>
<td>BYN</td>
<td>白俄罗斯卢布</td>
</tr>
<tr>
<td>BZD</td>
<td>伯利兹美元</td>
</tr>
<tr>
<td>CDF</td>
<td>刚果法郎</td>
</tr>
<tr>
<td>CRC</td>
<td>哥斯达黎加科朗</td>
</tr>
<tr>
<td>CUC</td>
<td>古巴可兑换比索</td>
</tr>
<tr>
<td>CVE</td>
<td>佛得角埃斯库多</td>
</tr>
<tr>
<td>DJF</td>
<td>吉布提法郎</td>
</tr>
<tr>
<td>DOP</td>
<td>多明尼加比索</td>
</tr>
<tr>
<td>NGN</td>
<td>尼日利亚奈拉</td>
</tr>
<tr>
<td>ERN</td>
<td>厄立特里亚纳克法</td>
</tr>
<tr>
<td>ETB</td>
<td>埃塞俄比亚比尔</td>
</tr>
<tr>
<td>FJD</td>
<td>斐济元</td>
</tr>
<tr>
<td>FKP</td>
<td>福克兰镑</td>
</tr>
<tr>
<td>GEL</td>
<td>格鲁吉亚拉里</td>
</tr>
<tr>
<td>GIP</td>
<td>直布罗陀镑</td>
</tr>
<tr>
<td>GMD</td>
<td>冈比亚达拉西</td>
</tr>
<tr>
<td>GNF</td>
<td>几内亚法郎</td>
</tr>
<tr>
<td>GYD</td>
<td>圭亚那元</td>
</tr>
<tr>
<td>HNL</td>
<td>洪都拉斯伦皮拉</td>
</tr>
<tr>
<td>HTG</td>
<td>海地古德</td>
</tr>
<tr>
<td>IQD</td>
<td>伊拉克第纳尔</td>
</tr>
<tr>
<td>IRR</td>
<td>伊朗里亚尔</td>
</tr>
<tr>
<td>KGS</td>
<td>吉尔吉斯斯坦索姆</td>
</tr>
<tr>
<td>KHR</td>
<td>柬埔寨瑞尔</td>
</tr>
<tr>
<td>KMF</td>
<td>科摩罗法郎</td>
</tr>
<tr>
<td>KYD</td>
<td>开曼群岛元</td>
</tr>
<tr>
<td>LRD</td>
<td>利比里亚元</td>
</tr>
<tr>
<td>MDL</td>
<td>摩尔多瓦列伊</td>
</tr>
<tr>
<td>MGA</td>
<td>马尔加什阿里亚</td>
</tr>
<tr>
<td>MKD</td>
<td>马其顿第纳尔</td>
</tr>
<tr>
<td>MVR</td>
<td>马尔代夫拉菲亚</td>
</tr>
<tr>
<td>MZN</td>
<td>新莫桑比克梅蒂卡尔</td>
</tr>
<tr>
<td>NAD</td>
<td>纳米比亚元</td>
</tr>
<tr>
<td>RSD</td>
<td>塞尔维亚第纳尔</td>
</tr>
<tr>
<td>SDG</td>
<td>苏丹镑</td>
</tr>
<tr>
<td>SHP</td>
<td>圣圣赫勒拿镑</td>
</tr>
<tr>
<td>SLL</td>
<td>塞拉利昂利昂</td>
</tr>
<tr>
<td>SRD</td>
<td>苏里南元</td>
</tr>
<tr>
<td>STD</td>
<td>圣多美多布拉</td>
</tr>
<tr>
<td>SZL</td>
<td>斯威士兰里兰吉尼</td>
</tr>
<tr>
<td>TJS</td>
<td>塔吉克斯坦索莫尼</td>
</tr>
<tr>
<td>TMT</td>
<td>土库曼斯坦马纳特</td>
</tr>
<tr>
<td>TOP</td>
<td>汤加潘加</td>
</tr>
<tr>
<td>TTD</td>
<td>特立尼达多巴哥元</td>
</tr>
<tr>
<td>UAH</td>
<td>乌克兰格里夫纳</td>
</tr>
<tr>
<td>UGX</td>
<td>乌干达先令</td>
</tr>
<tr>
<td>UZS</td>
<td>乌兹别克斯坦苏姆</td>
</tr>
<tr>
<td>VEF</td>
<td>委内瑞拉玻利瓦尔</td>
</tr>
<tr>
<td>VUV</td>
<td>瓦努阿图瓦图</td>
</tr>
<tr>
<td>WST</td>
<td>萨摩亚塔拉</td>
</tr>
<tr>
<td>XAF</td>
<td>中非法郎</td>
</tr>
<tr>
<td>XCD</td>
<td>东加勒比元</td>
</tr>
<tr>
<td>XOF</td>
<td>西非法郎</td>
</tr>
<tr>
<td>XPF</td>
<td>太平洋法郎</td>
</tr>
<tr>
<td>YER</td>
<td>也门里亚尔</td>
</tr>
<tr>
<td>ZMW</td>
<td>赞比亚克瓦查</td>
</tr>
<tr>
<td>SVC</td>
<td>萨尔瓦多科朗</td>
</tr>
<tr>
<td>MRU</td>
<td>毛里塔尼亚乌吉亚</td>
</tr>
</tbody>
</table>