# 中国银行实时汇率查询 · 外汇实时汇率

> 本文档为机器可读 Markdown，便于 AI / SDK 自动对接。页面原文：https://www.wapi.cn/api_detail/75/189.html
> 纯文本地址：`https://www.wapi.cn/api_detail/75/189.html?format=md`

## 概览

- **接口名称**：外汇实时汇率
- **子接口**：中国银行实时汇率查询（ID `189`）
- **接口简介**：提供的数据供参数，与人民币的兑换汇率，单位是100元；每分钟更新一次。具体汇率以办理业务时的实时汇率为准。
- **计费说明**：按次
- **请求地址**：`https://uaqy.api.storeapi.net/pyi/75/189`（支持 http/https）
- **请求方式**：`GET,POST`
- **返回格式**：`json,xml`
- **Content-Type（POST）**：`application/x-www-form-urlencoded;charset=utf-8`

## 子接口列表

- `188` 招商银行实时汇率查询
- `189` 中国银行实时汇率查询 ← 当前
- `190` 工商银行实时汇率查询
- `191` 光大银行实时汇率查询
- `192` 交通银行实时汇率查询
- `193` 农业银行实时汇率查询

## 请求参数

| 名称 | 必填 | 类型 | 说明 | 示例 |
| --- | --- | --- | --- | --- |
| `appid` | 是 | String | 应用ID，在后台我的应用查看或者添加 | 1 |
| `format` | 否 | String | 返回数据格式类型，每个接口已经说明支持返回格式:json,xml, jsonp调用方法说明 | json |
| `sign` | 是 | String | 1.使用Md5方式验证，参数按一定规则md5后返回的字符串，详情点击这里阅读 2.使用Hash验证方式，直接跟上密钥即可。如何设置hash验证 通过我的应用里面修改验证方式 | 52a9dbe274a5c537bbf7a53e2d66c09f |
| `time` | 否 | String | 请求时传递的当前服务器时间戳 | 1545829466 |

## 签名（MD5）

按参数名排序后拼接「键名+值」，空值不参与；末尾直接追加 32 位密钥（密钥不写键名）：

```
sign = MD5(appid1formatjsontime1545829466{secret})
```

说明：示例中 `appid` 默认为 `1`，请替换为「我的应用」中的 appid；密钥为应用 Secret。

## 返回参数

| 名称 | 必填 | 类型 | 说明 | 示例 |
| --- | --- | --- | --- | --- |
| `ZCcyNbr` | 否 | String | 币种类别 | 南非兰特 |
| `ZRatTim` | 否 | String | 当前时间 | 11:30:45 |
| `ZRtbBid` | 否 | String | 中行折算价 | 46.41 |
| `ZRtcBid` | 否 | String | 现钞买入价 | 42.9 |
| `ZRtcOfr` | 否 | String | 现钞卖出价 | 50.36 |
| `ZRthBid` | 否 | String | 现汇买入价 | 46.47 |
| `ZRthOfr` | 否 | String | 现汇卖出价 | 46.79 |
| `codeid` | 否 | Integer | 状态码，返回10000状态都会进行计费。具体说明可查看状态码说明 | 10000 |
| `message` | 否 | String | 请求状态说明 | 返回成功 |
| `retdata` | 否 | Array | 回数据集合,可能是数据、对象或者字符串 |  |
| `time` | 否 | String | 请求时传递的当前服务器时间戳 | 1566531234 |

## JSON 返回示例

```json
{
    "codeid": "10000",
    "message": "返回成功",
    "retdata": [
        {
            "ZCcyNbr": "阿联酋迪拉姆",
            "ZRthBid": "",
            "ZRtcBid": "186.41",
            "ZRthOfr": "",
            "ZRtcOfr": "199.93",
            "ZRtbBid": "192.45",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "澳大利亚元",
            "ZRthBid": "477.94",
            "ZRtcBid": "463.09",
            "ZRthOfr": "481.45",
            "ZRtcOfr": "482.63",
            "ZRtbBid": "477.63",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "巴西里亚尔",
            "ZRthBid": "",
            "ZRtcBid": "167.4",
            "ZRthOfr": "",
            "ZRtcOfr": "183.09",
            "ZRtbBid": "174.08",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "加拿大元",
            "ZRthBid": "530.99",
            "ZRtcBid": "514.23",
            "ZRthOfr": "534.91",
            "ZRtcOfr": "536.2",
            "ZRtbBid": "531.61",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "瑞士法郎",
            "ZRthBid": "717.69",
            "ZRtcBid": "695.54",
            "ZRthOfr": "722.73",
            "ZRtcOfr": "725.11",
            "ZRtbBid": "718.69",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "丹麦克朗",
            "ZRthBid": "104.93",
            "ZRtcBid": "101.69",
            "ZRthOfr": "105.77",
            "ZRtcOfr": "106.07",
            "ZRtbBid": "105.06",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "欧元",
            "ZRthBid": "782.96",
            "ZRtcBid": "758.64",
            "ZRthOfr": "788.74",
            "ZRtcOfr": "790.49",
            "ZRtbBid": "783.05",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "英镑",
            "ZRthBid": "865.36",
            "ZRtcBid": "838.47",
            "ZRthOfr": "871.73",
            "ZRtcOfr": "873.85",
            "ZRtbBid": "866.01",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "港币",
            "ZRthBid": "90.34",
            "ZRtcBid": "89.62",
            "ZRthOfr": "90.7",
            "ZRtcOfr": "90.7",
            "ZRtbBid": "90.04",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "印尼卢比",
            "ZRthBid": "",
            "ZRtcBid": "0.0481",
            "ZRthOfr": "",
            "ZRtcOfr": "0.0515",
            "ZRtbBid": "0.0497",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "印度卢比",
            "ZRthBid": "",
            "ZRtcBid": "9.2713",
            "ZRthOfr": "",
            "ZRtcOfr": "10.4549",
            "ZRtbBid": "9.8484",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "日元",
            "ZRthBid": "6.6356",
            "ZRtcBid": "6.4294",
            "ZRthOfr": "6.6844",
            "ZRtcOfr": "6.688",
            "ZRtbBid": "6.6371",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "韩国元",
            "ZRthBid": "0.5827",
            "ZRtcBid": "0.5622",
            "ZRthOfr": "0.5873",
            "ZRtcOfr": "0.6087",
            "ZRtbBid": "0.5845",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "澳门元",
            "ZRthBid": "87.79",
            "ZRtcBid": "84.85",
            "ZRthOfr": "88.14",
            "ZRtcOfr": "90.96",
            "ZRtbBid": "87.76",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "林吉特",
            "ZRthBid": "170.17",
            "ZRtcBid": "",
            "ZRthOfr": "171.71",
            "ZRtcOfr": "",
            "ZRtbBid": "168.82",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "挪威克朗",
            "ZRthBid": "78.66",
            "ZRtcBid": "76.24",
            "ZRthOfr": "79.3",
            "ZRtcOfr": "79.52",
            "ZRtbBid": "78.72",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "新西兰元",
            "ZRthBid": "451.74",
            "ZRtcBid": "437.8",
            "ZRthOfr": "454.92",
            "ZRtcOfr": "460.49",
            "ZRtbBid": "451.16",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "菲律宾比索",
            "ZRthBid": "13.51",
            "ZRtcBid": "13.09",
            "ZRthOfr": "13.61",
            "ZRtcOfr": "14.25",
            "ZRtbBid": "13.54",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "卢布",
            "ZRthBid": "10.78",
            "ZRtcBid": "10.12",
            "ZRthOfr": "10.86",
            "ZRtcOfr": "11.27",
            "ZRtbBid": "10.8",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "沙特里亚尔",
            "ZRthBid": "",
            "ZRtcBid": "183.93",
            "ZRthOfr": "",
            "ZRtcOfr": "193.5",
            "ZRtbBid": "188.48",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "瑞典克朗",
            "ZRthBid": "73.01",
            "ZRtcBid": "70.75",
            "ZRthOfr": "73.59",
            "ZRtcOfr": "73.8",
            "ZRtbBid": "73.06",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "新加坡元",
            "ZRthBid": "509.97",
            "ZRtcBid": "494.23",
            "ZRthOfr": "513.55",
            "ZRtcOfr": "515.09",
            "ZRtbBid": "510.1",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "泰国铢",
            "ZRthBid": "22.95",
            "ZRtcBid": "22.24",
            "ZRthOfr": "23.13",
            "ZRtcOfr": "23.84",
            "ZRtbBid": "22.96",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "土耳其里拉",
            "ZRthBid": "122.54",
            "ZRtcBid": "116.53",
            "ZRthOfr": "123.52",
            "ZRtcOfr": "139.37",
            "ZRtbBid": "122.54",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "新台币",
            "ZRthBid": "",
            "ZRtcBid": "21.82",
            "ZRthOfr": "",
            "ZRtcOfr": "23.53",
            "ZRtbBid": "22.56",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "美元",
            "ZRthBid": "708.22",
            "ZRtcBid": "702.45",
            "ZRthOfr": "711.22",
            "ZRtcOfr": "711.22",
            "ZRtbBid": "705.72",
            "ZRatTim": "11:30:45"
        },
        {
            "ZCcyNbr": "南非兰特",
            "ZRthBid": "46.47",
            "ZRtcBid": "42.9",
            "ZRthOfr": "46.79",
            "ZRtcOfr": "50.36",
            "ZRtbBid": "46.41",
            "ZRatTim": "11:30:45"
        }
    ],
    "time": 1566531234
}
```

## 状态码说明

| 状态码 | 说明 |
| --- | --- |
| `10000` | 返回成功 |
| `10001` | appid必须指定，可以我的应用里面查看 |
| `10002` | sign值必须指定，加密规则请前往帮助中心查看 |
| `10003` | sign值验证不通过，加密规则请前往帮助中心查看 |
| `10004` | 时差不能超过10分钟，可以不传递这个参数，注意时间戳单位是秒 |
| `10005` | appid错误，请检查appid值,前往会员中心->我的应用查看或添加 |
| `10006` | 当前IP地址未授权，请前往用户中心->我的应用添加ip{@info} |
| `10007` | 应用被禁用，请联系客服处理 |
| `10008` | 应用内没有该接口，请到我的应用里面添加这个接口 |
| `10009` | api接口不存在 |
| `10010` | 您没有添加该api接口 |
| `10011` | api已经到期 |
| `10012` | 没有订购任何api,请前往购买后再操作 |
| `10013` | 该接口已经暂停使用 |
| `10014` | 未知的错误，可以联系客服处理 |
| `10015` | 参数个数错误 |
| `10019` | {@info} |
| `10017` | time必须是整型 |
| `10018` | 次数不足 |
| `10020` | 子接口不存在,可能已经被关闭 |
| `10021` | 服务器发生错误 |
| `10022` | 帐户余额不足，请充值！ |
| `10023` | 订单提交成功，等待回调结果 |
| `10024` | 调试模式数据 |
| `10025` | 查无数据 |

## 对接提示

1. 先在挖数据（wapi.cn）创建应用，获取 `appid` 与密钥。
2. 按上方参数组装请求，计算 `sign` 后调用接口地址。
3. 可用在线测试工具：`https://www.wapi.cn/api_debug/75/189.html`
