跨境汇款-主订单-API

接口描述

此接口支持API主订单下单

主订单

基本信息

测试请求地址 https://cbtrxtest.helipay.com/cbtrx/rest/crossBorder/rmbCrossOrder
请求地址 https://cbptrx.helipay.com/cbtrx/rest/crossBorder/rmbCrossOrder
提交方式 采用POST方法提交,requestbody传值 Content-Type=[application/json;charset=UTF-8]
签名算法 UTF-8字符编码 SHA256签名 AES加密

请求参数

名称 参数 类型 必填 示例值 说明
商户编号 merchantNo String(10) Me10000002 合利宝-跨境系统分配的商户编号
订单号 orderNo String(64) p_20170302185347
产品编码 productCode String(20) RMBCROSS 固定值RMBCROSS
到岸币别 currency String CAD 需打款到收款人的币别,币别代码详见“开放平台=》附录=》币种编码
汇款类型 crossCategory String SERVICE_TRADE SERVICE_TRADE-服务贸易 GOODS_TRADE-货物贸易
下发类型 swiftType String(10) SHARE/OUR
附言 remark String(18) ewrwrqwreq 英文或拼音
收款人ID reciveID String(18) 合利宝-跨境系统分配的唯一收款人ID
关联明细批次流水号 crossRmbDetailID String(20) REW152341YMe100000018,REW152341YMe100000017 可上传多个 用,隔开
到岸金额 toShoreAmount String 10 外币金额 明细为外币上送此金额 订单金额留空
订单金额 orderAmount String 10 人民币金额 明细为人民币上送 到岸金额留空

响应参数

名称 参数 类型 必填 示例值 说明
返回码 errorCode String(20) 0000
返回信息 errorMessage String 成功
跨境汇款订单号 orderNo String RWQ79527677Me10000018 当前订单订单号

代码示例

 /**
     * 主订单
     */
    @RequestMapping("/toRmbCrossOrder")
    public ModelAndView toRmbCrossOrder() {
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.setViewName("rmbcross/rmbCrossOrder");
        return modelAndView;
    }
    @RequestMapping(value = "/rmbCrossOrderSubmit" , method = RequestMethod.POST)
    public ModelAndView rmbCrossOrderSubmit(@ModelAttribute @Valid RmbCrossApiOrderDTO rmbCrossApiOrderDTO , BindingResult bindingResult){
        ModelAndView modelAndView = new ModelAndView();
        if (bindingResult.hasErrors()) {
            throw new CommonSystemException(CommonSystemException.ILLEGAL_DATA_REQUEST[0], bindingResult.getFieldError().getDefaultMessage());
        }
        HeliRequest result = HandleDataUtils.encodeAndSign(rmbCrossApiOrderDTO, rmbCrossApiOrderDTO.getProductCode(), rmbCrossApiOrderDTO.getPlatMerchantNo(), rmbCrossApiOrderDTO.getMerchantNo());
        HeliRequest heliRequest = remoteService.postRemoteInvoke(LoadPropertiesUtils.getProperty("rmbCrossOrderUrl"), JSONObject.toJSONString(result), HeliRequest.class);
        RmbCrossOrderApiResponseForm responseForm = HandleDataUtils.decode(heliRequest, RmbCrossOrderApiResponseForm.class, rmbCrossApiOrderDTO.getProductCode(), rmbCrossApiOrderDTO.getPlatMerchantNo(), rmbCrossApiOrderDTO.getMerchantNo());
        if (!CbDemoConstants.SUCCESS_CODE.equals(responseForm.getErrorCode())) {
            throw new CommonSystemException(responseForm.getErrorCode(),responseForm.getErrorMessage());
        }
        logger.info("跨境汇款明细上传返回详细信息------------{}",responseForm.toString());

        modelAndView.addObject("responseForm", responseForm);
        modelAndView.setViewName("rmbcross/rmbCrossOrderResult");
        return modelAndView;
    }
                                

                                

                                

主订单查询

基本信息

测试请求地址 https://cbtrxtest.helipay.com/cbtrx/rest/crossBorder/rmbCrossOrderQuery
请求地址 https://cbptrx.helipay.com/cbtrx/rest/crossBorder/rmbCrossOrderQuery
提交方式 采用POST方法提交,requestbody传值 Content-Type=[application/json;charset=UTF-8]
签名算法 UTF-8字符编码 SHA256签名 AES加密

请求参数

名称 参数 类型 必填 示例值 说明
产品编码 productCode String(20)
订单号 orderNo String(64) p_20170302185347 跨境汇款订单号
商户编号 merchantNo String(10) Me10000002 合利宝-跨境系统分配的商户编号

响应参数

名称 参数 类型 必填 示例值 说明
产品编码 productCode String(20) RMBCROSS
跨境汇款订单号 rmbCrossOrderNo String RE79275YMe100000018 跨境汇款订单号
商户编号 merchantNo String(10) Me10000002 合利宝-跨境系统分配的商户编号
返回码 errorCode String(10) 0000 0000 代表请求成功
返回信息 errorMessage String(200) 成功 响应信息 错误信息
创建时间 createDate Date 订单创建时间
完成时间 compleDate Date 订单完成时间
状态 status String DOING INIT 新建 AUTHDEBI 实名认证待扣款, AUTHDEBITING 实名认证扣款中 DOING 待校验 NOVALID 校验不通过 LOGISTICSDEBIT 物流校验待扣款 LOGISTICSDEBITING 物流校验扣款中 LOGISTICS 物流校验中 VALID 校验通过 AMOUNT 金额已确认 CONFIRMED 牌价已确认
到岸币别 currency String USD 需打款到收款人的币别,币别代码详见“开放平台=》附录=》币种编码
订单金额 orderAmount BigDecimal 100 单位为元,最多保留小数点后两位
到岸金额 toShAmount BigDecimal 14.5
手续费 fee BigDecimal 单位为元
锁汇牌价 lockRemitPrice BigDecimal 689.65 商户锁汇牌价
汇款类型 crossCategory String GOODS_TRADE
附言 remark String ABC Co., Ltd.
收款人ID receiveID String RE59265926YMe000000018 合利宝-跨境系统分配的唯一收款人ID
关联明细批次号 detailBatchNo String RE7895257923YMe1000000018 关联明细批次流水号

代码示例

/**
     * 订单查询
     */
    @RequestMapping("/toRmbCrossOrderQuery")
    public ModelAndView toRmbCrossOrderQuery() {
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.setViewName("rmbcross/rmbCrossOrderQuery");
        return modelAndView;
    }
    @RequestMapping(value = "/rmbCrossOrderQuery" , method = RequestMethod.POST)
    public ModelAndView rmbCrossOrderQuery(@ModelAttribute @Valid RmbCrossApiOrderQueryDTO rmbCrossApiOrderDTO , BindingResult bindingResult){
        ModelAndView modelAndView = new ModelAndView();
        if (bindingResult.hasErrors()) {
            throw new CommonSystemException(CommonSystemException.ILLEGAL_DATA_REQUEST[0], bindingResult.getFieldError().getDefaultMessage());
        }
        HeliRequest result = HandleDataUtils.encodeAndSign(rmbCrossApiOrderDTO, rmbCrossApiOrderDTO.getProductCode(), rmbCrossApiOrderDTO.getPlatMerchantNo(), rmbCrossApiOrderDTO.getMerchantNo());
        HeliRequest heliRequest = remoteService.postRemoteInvoke(LoadPropertiesUtils.getProperty("rmbCrossOrderQueryUrl"), JSONObject.toJSONString(result), HeliRequest.class);
        RmbCrossOrderApiQueryResponseForm responseForm = HandleDataUtils.decode(heliRequest, RmbCrossOrderApiQueryResponseForm.class, rmbCrossApiOrderDTO.getProductCode(), rmbCrossApiOrderDTO.getPlatMerchantNo(), rmbCrossApiOrderDTO.getMerchantNo());
        if (!CbDemoConstants.SUCCESS_CODE.equals(responseForm.getErrorCode())) {
            throw new CommonSystemException(responseForm.getErrorCode(),responseForm.getErrorMessage());
        }
        logger.info("跨境汇款明细上传返回详细信息------------{}",responseForm.toString());

        modelAndView.addObject("responseForm", responseForm);
        modelAndView.setViewName("rmbcross/rmbCrossOrderQueryResult");
        return modelAndView;
    }
                                

                                

                                

错误码

错误码 错误码描述 解决方案