更新时间:2024-09-26 GMT+08:00

支付包年/包月产品订单

功能介绍

客户可以对待支付状态的包年/包月产品订单进行支付。

客户登录费用中心支付包年包月产品的待支付订单请单击这里

  • API支持月度结算和余额支付两种支付方式,月度结算优先。
  • 余额支付包括现金账户和信用账户两种支付方式,如果两个账户都有余额,则优先现金账户支付。
  • 同时使用订单折扣和优惠券的互斥规则如下:
    • 如果优惠券的限制属性上存在simultaneousUseWithEmpowerDiscount字段,并且值为0,则优惠券和伙伴授予折扣不能同时使用。
    • 如果优惠券的限制属性上存在simultaneousUseWithContractDiscount字段,并且值为0,则优惠券和商务授权折扣不能同时使用。
    • 如果优惠券的限制属性上存在minConsumeDiscount字段,当折扣ID包含的所有订单项上的折扣率discount_ratio都小于minConsumeDiscount字段时,则折扣ID和优惠券不能同时使用。
    • 如果优惠券的限制属性上存在simultaneousUseWithPromotionDiscount字段,并且值为0,则优惠券和促销折扣不能同时使用。
  • 财务托管企业子调用该接口时,若企业主帐号存在订单可用的优惠券,则支付订单时会自动使用,无需在请求参数中携带优惠券ID。

接口约束

该接口只允许使用客户AK/SK或者Token调用。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v3/orders/customer-orders/pay

请求消息

请求参数

参数

是否必选

参数类型

取值范围

描述

order_id

String

最大长度:64

订单编号。

取值为调用“续订包年/包月资源”接口时响应消息“order_ids”中的订单ID。

use_coupon

String

[YES|NO]

本次订单支付是否使用优惠券。传递“YES”时,coupon_infos字段必选,传递“NO”时,会忽略coupon_infos字段的传值。

  • 使用优惠券:YES,
  • 不使用优惠券:NO

use_discount

String

[YES|NO]

本次订单支付是否使用折扣。传递“YES”时,discount_infos字段必选,传递“NO”时,会忽略discount_infos字段的传值。

  • 使用折扣:YES,
  • 不使用折扣:NO

coupon_infos

List<CouponSimpleInfo>

最多支持3个

具体参见表1

字段预留。

当use_coupon参数取值为“YES”,本字段必填;当use_coupon参数取值为“NO”,本字段不可填写,否则报参数错误。

注意:

财务托管企业子调用该接口时,若企业主帐号存在订单可用的优惠券,则支付订单时会自动使用,无需在请求参数中携带优惠券ID。

discount_infos

List<DiscountSimpleInfo>

只支持1个

具体参见表2

折扣ID列表。

当use_discount参数取值为“YES”,本字段必填;当use_discount参数取值为“NO”,本字段不可填写,否则报参数错误。

表1 CouponSimpleInfo

参数

是否必选

参数类型

取值范围

描述

id

String

最大长度:64

优惠券ID。

type

Integer

[300-303]

优惠券类型

  • 300:折扣券,预留
  • 301:促销代金券
  • 302:促销现金券,预留
  • 303:促销储值卡,预留
表2 DiscountSimpleInfo

参数

是否必选

参数类型

取值范围

描述

id

String

最大长度:64

折扣ID。

type

Integer

[0,2,3]

折扣类型。

  • 0:促销折扣
  • 2:商务优惠
  • 3:合作伙伴授予折扣
请求示例
POST https://bss-intl.myhuaweicloud.com/v3/orders/customer-orders/pay HTTP/1.1
Content-Type: application/json
X-Auth-TokenMIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ
{
    "use_coupon":"YES",
    "use_discount":"YES",
    "coupon_infos": [
        {
            "id": "CP200527025610NGSC",
            "type": 301
        }
    ],
   "discount_infos": [
        {
            "id": "PDP2011260815047721TYT48G0BA02EI",
            "type": 1
        }
    ],
    "order_id": "CS20052715001E4CR"
}

响应消息

响应参数

状态码:204

默认返回:Success

状态码:400

参数

参数类型

取值范围

描述

error_code

String

最大长度:10

状态码。

具体请参见状态码

error_msg

String

最大长度:256

错误描述信息。

quota_infos

List<QuotaInfo>

-

配额或容量不足的列表。

具体请参见表3

仅当“error_code”是“CBC.99003141”时此参数有值。

  • 如果配额不足,请在华为云官网提交工单,扩大配额后,再支付该订单。
  • 如果容量不足,请重新下单。
  • 如果是规格发生变化,请重新下单。

enterprise_project_auth_result

List<EnterpriseProject>

-

企业项目资金配额不足的列表。

具体请参见表4

仅当“error_code”是“CBC.99003155”时此参数有值。

表3 QuotaInfo

参数

参数类型

描述

region

String

云服务区编码,例如:“ap-southeast-1”。具体请参见地区和终端节点对应云服务的“区域”列的值。

service_type_code

String

云服务类型编码。例如OBS的云服务类型编码为“hws.service.type.obs”。

resource_type_code

String

资源类型编码。例如ECS的VM为“hws.resource.type.vm”。

ResourceType是CloudServiceType中的一种资源,CloudServiceType由多种ResourceType组合提供。

resource_spec_code

String

客户购买云服务产品的资源规格。

例如VM的资源规格举例为“s2.small.1.linux”。

service_type_name

String

云服务类型名称。例如ECS的云服务类型名称为“弹性云服务器”。

resource_type_name

String

资源类型名称。例如ECS的资源类型名称为“云主机”。

auth_result

Integer

云服务配额、容量或规格发生变化校验结果。

  • 1:配额不足。
  • 2:容量不足。
  • 3:资源规格错误,仅发生在下单和支付之间资源规格发生变化的场景。
  • 4:关联资源信息错误,仅发生在下单和支付之间资源规格发生变化的场景。
  • 99:其他错误,仅发生在下单和支付之间资源规格发生变化的场景。

available_zone

String

可用分区标识。

取值请参见地区和终端节点中对应区域的可用分区名称,例如“cn-north-1a”表示“华北-北京一的可用区1”。

表4 EnterpriseProject

参数

参数类型

描述

enterprise_project_id

String

订单归属的企业项目标识(企业项目ID)。

  • default项目对应ID:0
  • 未归集项目对应ID:-1或null

enterprise_project_name

String

企业项目名称。

auth_status

Integer

企业项目资金配额校验结果。

10:资金配额不足/项目不可用

11:组织预算资金配额不足

响应示例

HTTP/1.1 204 No Content
Content-Type: application/json;charset=UTF-8
Content-Length: length
Date: response time 

状态码

  • 状态码4xx:由于明显的客户端错误(例如,格式错误的请求语法、参数错误等),华为云会返回4xx错误码,请及时检查请求消息的正确性,重新发起请求。
  • 状态码5xx:由于华为云系统原因,导致无法完成明显有效请求的处理,可及时联系华为云客服处理。

HTTP状态码

错误码

描述

400

CBC.99000046

预算不足。

400

CBC.30000010

无效订单(可能是订单不存在),不能进行操作。

400

CBC.99003106

订单状态已发生变更,不能进行支付操作。

400

CBC.99003108

您选择的折扣不可用于该订单。

400

CBC.99003110

订单已经过了支付截止时间,请重新提交订单。

400

CBC.99003112

优惠券或储值卡已被使用。

400

CBC.99003116

选择的优惠券限制不能和折扣同时使用。

400

CBC.99003117

选择的优惠券配置了最小折扣比例,而选择的折扣小于这个折扣比例。

例如:优惠券配置的最小折扣比例为90%,而选择的折扣在所有订单行上都小于90%,则该折扣不可使用。

400

CBC.99003141

云服务配额或容量不足或规格发生变化。

400

CBC.99003147

代金券和折扣券不能同时使用。

400

CBC.99003155

企业项目资金配额不足/项目不可用。

400

CBC.99003156

云商店券和专用代金券不能同时使用。

400

CBC.99003162

支付时间超过设定的生效时间。

400

CBC.99003198

企业组织预算不足。

400

CBC.99005003

余额不足。

400

CBC.99005036

该客户不支持使用接口支付(既不支持余额支付,也不支持月结支付)。

400

CBC.99006093

获取不到税率信息。

400

CBC.7281

您的账号已被冻结,无法续订/退订/支付。

400

CBC.99008040

操作频繁。

500

CBC.0999

其他错误。

400

CBC.99000088

抱歉,支付处理中,请勿重复操作。

400

CBC.99000089

抱歉,当前订单号不能操作,请使用组合交易单号操作。

400

CBC.99008056

今日创建交易已达上限。