createExchange需要签名验签

POST /amsin/api/v1/business/fund/createExchange

集成商可调用此接口发起外汇交割请求。万里汇支持两种外汇交割场景:

  • 远期外汇。用户可以获得一段时间后的稳定外汇汇率。此场景下,createExchange接口为异步。万里汇响应给集成商的结果为API调用结果而非外汇交割结果。集成商需调用inquiryExchange接口查询是否外汇交割到户,或等待万里汇使用notifyExchange接口发送通知。
  • 即期外汇。用户可以获得当下的即时外汇汇率。此场景下,createExchange接口响应外汇交割到户的结果。

报文结构

万里汇接口报文结构包括:请求头,请求体。关于头信息,详见:

入参

customerId String  CONDITIONAL

由万里汇定义、用于唯一标识某万里汇账户。

customerId accessToken 不能同时为空。

更多信息:

  • 最大长度:64 字符

accessToken String  CONDITIONAL

用于OAuth校验的访问令牌。

customerId accessToken 不能同时为空。

更多信息:

  • 最大长度:64 字符

exchangeRequestId String  REQUIRED

由集成商定义,代表本次外汇交割到户请求的唯一ID。

更多信息:

  • 此为幂等字段。
  • 最大长度:128 字符

quote Quote  CONDITIONAL

本次外汇交割到户请求的外汇汇率信息。

exchangeMode取值为APPOINTED时,此字段为必传,且该字段取值应与createQuote接口响应体中的quote字段一致。

Show child parameters

sell QuoteAmount  REQUIRED

卖出外汇金额。

Show child parameters

buy QuoteAmount  REQUIRED

买入外汇金额。

Show child parameters

exchangeMode String  REQUIRED

外汇交割模式。

取值范围:

  • REALTIME:实时交割
  • APPOINTED:指定日期交割

exchangeTradeType String  REQUIRED

外汇交割类型。

取值范围:

  • SPOT:即时汇率
  • FORWARD:远期汇率
  • UNFUNDED_SPOT: 指该笔外汇交易类型为资金不充足的即期交易,使用的是远期汇率

exchangeUnfundedInfo ExchangeForwardInfo  CONDITIONAL

外汇交割相关信息。

exchangeTradeType字段取值为 UNFUNDED_SPOT时,此字段为必传

Show child parameters

exchangeForwardInfo ExchangeForwardInfo  CONDITIONAL

外汇交割相关信息。

exchangeTradeType 字段取值为FORWARD时,此字段为必传

Show child parameters

exchangeOrderAddition ExchangeQuoteAddition  

外汇交割附加信息,如客户端的订单ID等。

Show child parameters

exchangeRequestTime String  

请求的时间。

更多信息:

  • 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。

出参

result Result  REQUIRED

代表API接口的调用结果。

Show child parameters

exchangeId String  REQUIRED

由万里汇定义的,本次外汇交割到户请求的唯一ID。

该字段只有当 result.resultStatus =S 时才会按需返回。

更多信息:

  • 最大长度:64 字符

exchangeRequestId String  REQUIRED

由集成商定义,代表本次外汇交割到户请求的唯一ID。

该字段只有当 result.resultStatus =S 时才会按需返回。

更多信息:

  • 此为幂等字段。
  • 最大长度:128 字符

sell QuoteAmount  REQUIRED

卖出外汇金额。

该字段只有当 result.resultStatus =S 时才会按需返回。

Show child parameters

buy QuoteAmount  REQUIRED

买入外汇金额。

该字段只有当 result.resultStatus =S 时才会按需返回。

Show child parameters

exchangeCreateTime DateTime  REQUIRED

外汇交割到户请求的发起时间。

该字段只有当 result.resultStatus =S 时才会按需返回。

更多信息:

  • 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。

exchangeFinishTime DateTime  

外汇交割到户请求的完成时间。

该字段只有当 result.resultStatus =S 时才会按需返回。

更多信息:

  • 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。

quote Quote  REQUIRED

本次外汇交割到户请求的外汇汇率信息。

该字段只有当 result.resultStatus =S 时才会按需返回。

Show child parameters

exchangeMode String  REQUIRED

外汇交割模式。

可取值范围:

  • REALTIME:实时交割
  • APPOINTED:指定日期交割

该字段只有当 result.resultStatus =S 时才会按需返回。

exchangeTradeType String  REQUIRED

外汇交割类型。

可取值范围:

  • SPOT:即时汇率
  • FORWARD:远期汇率
  • UNFUNDED_SPOT: 指该笔外汇交易类型为资金不充足的即期交易,使用的是远期汇率

该字段只有当 result.resultStatus =S 时才会按需返回。

exchangeUnfundedInfo ExchangeForwardInfo  CONDITIONAL

外汇交割信息。

result.resultStatus =SexchangeTradeType取值为UNFUNDED_SPOT时,此字段为必传

Show child parameters

exchangeForwardInfo ExchangeForwardInfo  CONDITIONAL

外汇交割相关信息。

result.resultStatus =SexchangeTradeType取值为FORWARD时,此字段为必传

Show child parameters
API Explorer

请求

URL
Case
Unfunded spot scenario
请求体

响应

响应体

响应处理

集成商调用接口后,万里汇响应集成商API调用结果。result.resultStatus 字段取值范围为:

result.resultStatus

描述

S

API请求成功。

远期外汇交割场景:

  • 如果result.resultStatus  S,表示万里汇已接受本次API请求,远期外汇交易正在处理中。调用 inquiryDeal 以查询远期外汇交易结果。

即期外汇交割场景:

  • 如果result.resultStatus  S表示本次外汇交割请求成功。

F

API请求失败。

失败原因参见结果码(即result.resultCode 和 result.resultMessage

U

API响应结果为UNKNOWN(未知)时,集成商需调用 inquiryExchange 接口以检查外汇交割请求状态。

result.resultCode:系统结果码

结果码结果码信息行动建议
SUCCESSSSuccess
PARAM_ILLEGALFIllegal parameters exist. For example, a non-numeric input, or an invalid date.

参考API文档页面,确认请求头和传参是否正确

PROCESS_FAILFA general business failure occurred. Do not retry.

需要人工介入,联系万里汇技术支持以解决此问题

UNKNOWN_EXCEPTIONUAPI failed due to unknown reason.

服务器错误,若稍后重试问题依旧,联系万里汇技术支持以解决问题

REQUEST_TRAFFIC_EXCEED_LIMITUThe request traffic exceeds the limit.

重试,若问题依旧,联系万里汇技术支持

INVALID_APIFThe called API is invalid or not active.

确认是否调用正确的API

INVALID_CLIENTFThe client is invalid.

Client ID不存在或无效

INVALID_SIGNATUREFThe signature is invalid.

确认请求正确加签,具体参见:

METHOD_NOT_SUPPORTEDFThe server does not implement the requested HTTP method.

确认HTTP请求方法为POST

result.resultCode:业务结果码

结果码结果码信息行动建议
PROCESSINGSThe payment order is being processed.

订单已创建,处理中。调用inquiryExchange来获取结果或等到万里汇使用notifyExchange发送结果通知

BALANCE_INSUFFICIENTFThe balance is insufficient for the exchange.

仅出现于即期外汇交易场景。确认余额充足后重试

AUTHORIZATION_NOT_EXISTFThe authorization does not exist.

当前授权关系不存在,请联系万里汇技术支持检查授权关系

UN_SUPPORT_BUSINESSFUnsupported business.

包含无效参数(如货币代码错误),使用正确的参数重试

QUOTE_EXPIREDFThe quote is expired.

调用createQuote接口来获取新汇率报价,并使用新汇率报价完成外汇请求

FX_RELATED_ORDER_NOT_EXISTFThe exchange order does not exist.

仅出现于远期外汇交割场景。确认dealId正确后重试

CURRENCY_NOT_SUPPORTFThe currency is not supported.

确认币种信息正确后重试

CONTRACT_CHECK_FAILFThe contract check has failed.

检查合约状态后重试

@2024 WorldFirst