notifyExchange
万里汇使用此接口向集成商发送外汇交割结果通知。
接口结构
万里汇接口报文结构包括:请求头,请求体。关于头信息,详见:
请求参数
字段名 | 数据类型 | 是否为必填字段 | 描述 |
exchangeResult | Result 对象 | 是 | 外汇交割到户请求结果。参见:请求处理。 |
exchangeId | 字符串 | 是 | 由万里汇定义的,本次外汇交割到户请求的唯一ID。 更多信息:
|
exchangeRequestId | 字符串 | 是 | 由集成商定义,代表本次外汇交割到户请求的唯一ID。 更多信息:
|
sell | QuoteAmount 对象 | 是 | 卖出外汇金额 |
buy | QuoteAmount 对象 | 是 | 买入外汇金额 |
exchangeCreateTime | Datetime 对象 | 是 | 外汇交割到户请求的发起时间。 更多信息:
|
exchangeFinishTime | Datetime 对象 | 是 | 外汇交割到户请求的完成时间。 更多信息:
|
quote | Quote 对象 | 是 | 本次外汇交割到户请求的外汇汇率信息。 |
exchangeMode | 字符串 | 是 | 外汇交割模式。取值范围:
关于字段枚举值,详见: exchangeMode |
exchangeTradeType | 字符串 | 是 | 外汇交割类型。取值范围:
关于字段枚举值,详见:exchangeTradeType |
exchangeUnfundedInfo | 是(有条件必填) | 远期外汇交割信息,当 |
请求处理
exchangeResult.result
:此字段为远期交割到户结果。
在收到万里汇的请求之后,集成商需要向万里汇发送响应信息,以确认信息已收到。
发送响应信息前,集成商需正确加签。详见:生成签名及加验签 章节。
头信息包括:
响应头参数 | 是否必填 | 范例 |
Signature | 是 | Signature: algorithm=RSA256, keyVersion=2, signature=**** |
Content-Type | 是 | Content-Type: application/json; charset=UTF-8 |
Client-Id | 是 | Client-Id: **** |
Response-Time | 是 | Response-Time: 2019-04-04T12:08:56+08:00 |
范例响应体:
{
"result":{
"resultStatus":"S",
"resultCode":"SUCCESS",
"resultMessage":"success"
}
}
更多关于响应信息,参考:API概览-响应报文结构
如果集成商不向万里汇发送响应信息,万里汇会重新发送请求通知。万里汇重发通知的规则为:
- 重试总数:7次
- 两次重发请求之间的间隔:2分钟,10分钟,10分钟,1小时,2小时,6小时,15小时
响应参数
字段名 | 数据类型 | 是否为必填字段 | 描述 |
result | Result 对象 | 是 | 代表接口调用结果 |
结果码
exchangeResult.resultCode
resultCode | resultStatus | resultMessage | 处理建议 |
SUCCESS | S | The deal is successfully completed. | |
PROCESS_FAIL | F | A general business failure occurred. Do not retry. | 需要人工介入,联系万里汇技术支持以解决此问题 |
范例
请求
请求体范例
{
"buy": {
"currency": "USD",
"value": 231
},
"exchangeCreateTime": "2022-05-16T08:55:09Z",
"exchangeFinishTime": "2022-05-16T08:55:16Z",
"exchangeId": "*****",
"exchangeMode": "APPOINTED",
"exchangeRequestId": "*****",
"exchangeResult": {
"resultCode": "SUCCESS",
"resultMessage": "success.",
"resultStatus": "S"
},
"exchangeTradeType": "SPOT",
"quote": {
"quoteCurrencyPair": "EUR/USD",
"quoteExpiryTime": "2022-05-16T09:08:51Z",
"quoteId": "*****",
"quotePrice": "1.07461952",
"quoteStartTime": "2022-05-16T08:53:51Z"
},
"sell": {
"currency": "EUR",
"value": 215
}
}
响应
响应头范例
{
"headers": {
"Content-Type": "application/json",
"client-id": "*****",
"response-time": "2022-03-07T07:49:27Z",
"signature": "algorithm=RSA256,keyVersion=1,signature=VelVji6jp8UJVrBUvZrwij8uPmjc//hfmVJqCCW0x+Yh/HEs5pz9wiMyYLRjykTOii+f5EznxcFIUxPae5KITe3fChufJzFhJ4iku5U/w6exmBWVR5vrvQZSYO0vG5aJKwUQW/jjgaUWg1d+ySmaJ0VZ0pniQRtwYRGCvzdey+gI0+jMFbChIQDemZ0uLCExRQ0SBKAjEH/Vq14KlY88Wr2bR829tqsxaECSq2M5eeDC7j6FGPMazfX1W+EGqa2go2Hif6BnodwXzNsEAfQlUrbwCi9Ey/uNO4ScTX6FVG1nb+q8/k09wTkCz/nHnwTQolDrLRndZqZfz79a344*****"
}
}
响应体范例
{
"result":{
"resultStatus":"S",
"resultCode":"SUCCESS",
"resultMessage":"success."
}
}