Updated on 2024-01-31 GMT+08:00

Querying Order Details

Function

A customer can invoke this API to query order bills.

This API will be brought offline soon. For details about the API for querying order details, see Querying Order Details.

Web UI

A customer can switch to the Orders page in the Billing Center to query order details.

  1. Go to the My Orders page.
  2. To view a cloud service order, click the Cloud Services tab.
  3. You can filter orders by creation time, order number, or product name.

  4. Click Details for the target order.

    If the order status is Processing, indicates that resources are being created and indicates that the order contains a resource that failed to be created.

    • If the cloud service order status is Pending Payment, you can pay or cancel the order on the order details page.

    • If your cloud service order has any resources that fail to be provisioned, you will be automatically unsubscribed from the resources.

      When an account manager places an order on behalf of the customer in accordance with the contract, the contract information will be displayed on the order details page. The account manager can then click the contract name to go to the contract details page.

REST API

A customer can query order details on the partner sales platform.

  • This API can be invoked using the AK/SK or token of the partner or AK/SK or token of the partner's customer.
  • If you want to query the resource information of a specified order, invoke the API described in Querying Customer's Yearly/Monthly Resources and enter the order ID in the request to query the resource information.

  1. URI

    GET /v1.0/{domain_id}/common/order-mgr/orders/{order_id}

    The following table describes the parameters.

    Table 1 URI parameters

    Parameter

    Mandatory

    Maximum Length of Characters

    Description

    domain_id

    Yes

    A maximum of 64 characters

    order_id

    Yes

    A maximum of 64 characters

    Order ID.

    The system will return the orders if the orders are queried.

    Table 2 Request parameters

    Parameter

    Mandatory

    Value Range

    Description

    offset

    No

    [1- Maximum integer]

    Page number. If this parameter is not input, the default value is 1. If the value of this parameter exceeds 1000000, the default value 1 is used.

    If this parameter is not included in the request parameters, the value 1 is used. It cannot be set to "". If this parameter is left empty or is set to null, the value of orderInfo in the response is null.

    limit

    No

    [1-100]

    Number of records displayed on each page. If this parameter is not input, the default value is 10.

    If this parameter is not included in the request parameters, is left empty, or is set to null, the value 10 is used. This parameter cannot be set to "".

  1. Request

    Request Parameters

    None

    Example Request

    GET https://bss-intl.myhuaweicloud.com/v1.0/{domain_id}/common/order-mgr/orders/CS*****O7 HTTP/1.1
    Content-Type: application/json
    X-Auth-Token: MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ

  1. Response

    Response Parameters

    Parameter

    Type

    Description

    error_code

    String

    Error code.

    For details, see 4.

    error_msg

    String

    Error description.

    orderInfo

    CustomerOrderEntity

    Order details. This parameter is available only when offset is set to 1.

    For details, see Table 3.

    count

    Integer

    Number of order items

    orderlineItems

    List<OrderLineItemEntity>

    Order items in an order

    For details, see Table 4.

    Table 3 CustomerOrderEntity

    Parameter

    Type

    Description

    orderId

    String

    Order ID

    baseOrderId

    String

    Parent order ID (order ID before splitting).

    beId

    String

    Partner business entity ID.

    customerId

    String

    Customer ID.

    sourceType

    Integer

    Customer order source type. The value can be:

    • 1. Customer
    • 2. Agent
    • 3: Contract
    • 4: Distributor

    status

    Integer

    Order status. The value can be:

    • 1: Pending approval
    • 3: Processing
    • 4: Canceled
    • 5: Completed
    • 6: Pending payment
    • 9: To be confirmed

    orderType

    Integer

    Order type. The value can be:

    • 1: New purchase
    • 2: Renewal
    • 3: Change
    • 4: Unsubscription
    • 10: Yearly/monthly to pay-per-use
    • 11: Pay-per-use to yearly/monthly
    • 13: Trial
    • 14: Commercial use
    • 15: Price adjustment

    currency

    Double

    Order amount (original price).

    In the unsubscription order, the amount is equal to the value of currencyAfterDiscount.

    currencyAfterDiscount

    Double

    Order amount after a discount (excluding the vouchers or cards)

    measureId

    Integer

    Order amount unit.

    • 1: Dollar
    • 2: Dime
    • 3: Cent

    measureName

    String

    Amount unit name.

    createTime

    String

    Creation time.

    UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, for example, 2019-05-06T08:05:01Z.

    The range of HH is 0-23, and the range of mm and ss is 0-59.

    paymentTime

    String

    Payment time.

    UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, for example, 2019-05-06T08:05:01Z.

    The range of HH is 0-23, and the range of mm and ss is 0-59.

    lastUpdateTime

    String

    Latest status update time.

    UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, for example, 2019-05-06T08:05:01Z.

    The range of HH is 0-23, and the range of mm and ss is 0-59.

    needAudit

    Boolean

    Whether the approval is required.

    currencyOfficial

    Double

    Order amount (list price).

    In the unsubscription order, the amount is equal to the value of currencyAfterDiscount.

    amountInfo

    AmountInfo

    Order deduction details.

    For details, see Table 5.

    currencyType

    String

    Currency code.

    contractId

    String

    Contract ID.

    serviceType

    String

    Cloud service type code. For example, the cloud service type code of OBS is hws.service.type.obs. To obtain a specific service type, call the API in Querying Cloud Service Types.

    Table 4 OrderLineItemEntity

    Parameter

    Type

    Description

    orderLineItemId

    String

    Order item ID.

    cloudServiceType

    String

    Cloud service type code. For example, the cloud service type code of OBS is hws.service.type.obs. To obtain a specific service type, call the API in Querying Cloud Service Types.

    productId

    String

    Product ID.

    productSpecDesc

    String

    Product specification description.

    periodType

    Integer

    Period type.

    • 0: Day
    • 1: Week
    • 2: Month
    • 3: Year
    • 4: Hour
    • 5: One-off
    • 6: Pay-per-use (reserved)
    • 7: By usage report (reserved)

    periodNum

    Integer

    Number of periods.

    validTime

    String

    Effective time.

    UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, for example, 2019-05-06T08:05:01Z.

    The range of HH is 0-23, and the range of mm and ss is 0-59.

    expireTime

    String

    Expiration time.

    UTC time in "yyyy-MM-dd'T'HH:mm:ss'Z'" format, for example, 2019-05-06T08:05:01Z.

    The range of HH is 0-23, and the range of mm and ss is 0-59.

    subscriptionNum

    Integer

    Number of subscriptions.

    currency

    Double

    Order amount (original price).

    In the unsubscription order, the amount is equal to the value of currencyAfterDiscount.

    currencyAfterDiscount

    Double

    Order amount after a discount (excluding the vouchers or cards).

    currencyOfficial

    Double

    Order amount (list price).

    In the unsubscription order, the amount is equal to the value of currencyAfterDiscount.

    amountInfo

    AmountInfo

    Order deduction details.

    For details, see Table 5.

    currencyType

    String

    Currency code.

    categoryCode

    String

    Product catalog code.

    Table 5 AmountInfo

    Parameter

    Type

    Description

    discountList

    List<DiscountItem>

    Fee item.

    For details, see Table 6.

    cashcouponAmount

    Double

    Flexi-purchase coupon amount (reserved).

    couponAmount

    Double

    Cash coupon amount.

    cardAmount

    Double

    Stored-value card amount (reserved).

    commissionAmount

    Double

    Handling fee (only for unsubscription orders).

    consumedAmount

    Double

    Consumption amount (only for unsubscription orders).

    Table 6 DiscountItem

    Parameter

    Type

    Description

    discountType

    String

    Discount type.

    200: Promotion product discount

    300: Promotion discount coupon

    301: Promotion coupon

    302: Promotion flexi-purchase coupon

    500: Specified discount for agent subscription

    501: Specified exemption for agent subscription

    502: Specified buy-it-now price for agent subscription

    600: Discount specified in the discount and rebate contract

    601: Discount specified in the channel frame contract

    602: Discount specified in the designated-purpose fund contract

    603: Discount specified in the directly signed offline contract

    604: Discount specified in the authorized telemarketing contract

    605: Discount specified in the commercial contract

    606: Discount specified in the channel commercial contract

    607: Partner authorized discount

    609: Discount for adjusting an order price

    610: Discount amount

    700: Promotion discount

    800: Top-up account discount

    discountAmount

    Double

    Discounted amount.

    Example Response

    HTTP/1.1 200 OK
    Content-Type: application/json;charset=UTF-8
    Content-Length: length
    Date: response time  
    
    {
    	"error_code": "CBC.0000",
    	"error_msg": "success",
    	"orderInfo": {
    		"orderId": "CS1*****LZ2",
    		"baseOrderId": null,
    		"beId": "9689",
    		"customerId": "d75*****298",
    		"sourceType": 1,
    		"status": 5,
    		"orderType": 1,
    		"currency": 3,
    		"currencyAfterDiscount": 0,
    		"measureId": 1,
    		"measureName": null,
    		"createTime": "2019-06-20T16:09:52Z",
    		"paymentTime": "2019-06-20T16:10:11Z",
    		"lastUpdateTime": "2019-06-20T16:11:07Z",
    		"needAudit": false,
    		"contractId": null,
    		"currencyType": "USD",
    		"currencyOfficial": 3,
    		"amountInfo": {
    			"discountList": [{
    				"discountType": "301",
    				"discountAmount": 3
    			}],
    			"cashcouponAmount": 0,
    			"couponAmount": 3,
    			"cardAmount": 0,
    			"commissionAmount": null,
    			"consumedAmount": null
    		},
    		"serviceType": "hws.service.type.ebs"
    	},
    	"count": 1,
    	"orderlineItems": [{
    		"orderLineItemId": "CS1*****3LZ2-000001",
    		"cloudServiceType": "hws.service.type.ebs",
    		"productId": "d5d*****3d24",
    		"productSpecDesc": "Common I/O",
    		"categoryCode": "hws.resource.storage1.evs",
    		"periodType": 2,
    		"periodNum": 1,
    		"validTime": "2019-06-20T16:10:30Z",
    		"expireTime": "2019-07-21T15:59:59Z",
    		"subscriptionNum": 1,
    		"currency": 3,
    		"currencyAfterDiscount": 0,
    		"currencyOfficial": 3,
    		"amountInfo": {
    			"discountList": [{
    				"discountType": "301",
    				"discountAmount": 3
    			}],
    			"cashcouponAmount": 0,
    			"couponAmount": 3,
    			"cardAmount": 0,
    			"commissionAmount": null,
    			"consumedAmount": null
    		},
    		"currencyType": "USD"
    	}]
    }
  2. Status Code
    • 4xx: This class of HTTP status code is intended for situations in which the error seems to have been caused by the client, for example, the request contains bad syntax or incorrect parameters. You must ensure the request is correct.
    • 5xx: This class of HTTP status code is intended for cases in which the Huawei Cloud server is aware that it has encountered an error or is otherwise incapable of performing the request. In this case, contact Huawei Cloud customer service.

    HTTP Status Code

    Error Code

    Description

    200

    CBC.0000

    Succeeded.

    400

    CBC.0100

    Incorrect parameter.

    400

    CBC.0101

    Invalid parameter.

    403

    CBC.0151

    Access denied.

    403

    CBC.0155

    Request denied.

    The possible causes are as follows: The account authentication information is incorrect. The account or member account does not have the permission to call the API.

    500

    CBC.0999

    Other errors.