---
schema_version: "1"
id: 939ab9ae931e324dd66b2b85d1a82ae1a2cb65cb51f062a4f4bc137a3f23e2c7
title: TMF622 v4 Product Ordering
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/industries-integrations/comms/references/generated-api-specs/tmf622v4.md
canonical_url: https://developer.salesforce.com/docs/industries/communications/references/tmf622v4
source_site: developer.salesforce.com
content_type: documentation
content_hash: 59181590727c8d5d4165936fff4c05dec4238a56323230eb617e58cb8113f6e5
products:
  - Communications Cloud TM Forum API
  - Industries Integrations
---
TMF622 v4 Product Ordering

# TMF622 v4 Product Ordering

Use the Product Ordering API to provide and manage products. You can create a product, add get product details. The data exchange is compliant with the TM Forum's Open API specification.

**Version:** v1

Protocols: https.

## Operations

### POST Create Product Order

`POST /productOrder`

Creates a Product Order entity.

#### Parameters

*   `Authorization` (header, string, required) Specifies the bearer token to use for the authentication of request.
*   `Namespace` (header, string) Specifies the namespace to use with the URL path.
*   `Domain-Name` (header, string, required) Specifies the domain name to use with the URL path received from the userinfo API.

#### Request body

Media type: `application/json`. Schema: `ProductOrder_Create`.

Specifies the Product Order to be created.

_Example_

```
{
    "@type": "ProductOrder",
    "category": "B2C product order",
    "channel": [
        {
            "id": "1",
            "name": "Online chanel",
            "role": "Used channel for order capture"
        }
    ],
    "description": "Product Order illustration sample",
    "externalId": "PO-456",
    "note": [
        {
            "author": "Jean Pontus",
            "date": "2019-04-30T08:13:59.509Z",
            "id": "1",
            "text": "This is a TMF product order illustration"
        }
    ],
    "priority": "1",
    "productOrderItem": [
        {
            "@type": "ProductOrderItem",
            "action": "add",
            "id": "101",
            "quantity": 1,
            "productOffering": {
                "id": "MobilePlan"
            },
            "productOrderItemRelationship": [
                {
                    "id": "102",
                    "relationshipType": "bundles"
                }
            ]
        },
        {
            "@type": "ProductOrderItem",
            "action": "add",
            "id": "102",
            "quantity": 2,
            "productOffering": {
                "id": "Iphone16"
            },
            "product": {
                "productCharacteristic": [
                    {
                        "value": "16GB",
                        "name": "Data"
                    }
                ]
            }
        }
    ],
    "relatedParty": [
        {
            "id": "123456",
            "name": "Acme"
        }
    ],
    "requestedCompletionDate": "2019-05-03T08:13:59.506Z",
    "requestedStartDate": "2019-05-03T08:13:59.506Z"
}
```

#### Responses

*   **201** Created the resource.
    
    Media type: `application/json`. Schema: `ProductOrder_POST_Response (extended)`.
    
    Includes all fields of `ProductOrder_POST_Response`.
    
    *   `href` (_string_, required) Specifies the unique reference of the Product Order.
    *   `id` (_string_, required) Specifies the unique identifier of the Product Order.
    
    _Example_
    
    ```
    {
        "productOrderItem": [
            {
                "productOrderItemRelationship": [
                    {
                        "relationshipType": "bundles",
                        "id": "103"
                    },
                    {
                        "relationshipType": "bundles",
                        "id": "102"
                    }
                ],
                "quantity": 1.00,
                "action": "Add",
                "id":"101",
                "@type": "ProductOrderItem"
            },
            {
                "quantity": 1.00,
                "action": "Add",
                "id":"102",
                "@type": "ProductOrderItem"
            },
            {
                "product": {
                    "productCharacteristic": [
                        {
                            "value": "16GB",
                            "name": "Data"
                        }
                    ]
                },
                "quantity": 2.00,
                "action": "Add",
                "id":"103",
                "@type": "ProductOrderItem"
            }
        ],
        "relatedParty": [
            {
                "name": "Acme",
                "id": "123456",
                "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Account/001DX000001pAujYAE",
                "@type": "RelatedParty"
            }
        ],
        "state": "Activated",
        "requestedStartDate": "2019-05-03T00:00:00.000+0000",
        "requestedCompletionDate": "2019-05-02T00:00:00.000+0000",
        "orderDate": "2025-03-13T08:54:27.000+0000",
        "note": [
            {
                "author": "Jean Pontus",
                "date": "2019-04-30T08:13:59.509Z",
                "id": "1",
                "text": "This is a TMF product order illustration"
            }
        ],
        "id": "00000248",
        "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Order/801DX000000E7tmYAC",
        "description": "Product Order illustration sample",
        "channel": [
                  {
                    "id": "1",
                    "name": "Online chanel",
                    "role": "Used channel for order capture"
                  }
                ]
    }
    ```
    
*   **400** There was an issue with your request.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "400"
    reason: Specify the required parameter in the payload- account and product order item(s) missing.
    ```
    
*   **404** Resource not found.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "404"
    reason: We couldn't find the Account in your salesforce org.
    ```
    
*   **500** Internal server error
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "500"
    reason: Internal server error
    ```
    

### GET List Product Orders

`GET /productOrder`

Retrieves the Product Order entities.

#### Parameters

*   `offset` (query, string) Specifies the requested index for the start of the resources to be included in the response.
*   `limit` (query, string) Specifies the requested number of the resources to be included in the response.
*   `id` (query, string) Identifies the Product Order.
*   `state` (query, string) Specifies the state of the Product Order.
*   `fields` (query, string) Specifies the comma-separated properties to provide in the response.
*   `Authorization` (header, string, required) Specifies the bearer token to use for the authentication of request.
*   `Namespace` (header, string) Specifies the namespace to use with the URL path.
*   `Domain-Name` (header, string, required) Specifies the domain name to use with the URL path received from the userinfo API.

#### Responses

*   **200** Success
    
    Media type: `application/json`. Schema: `array of object`.
    
    Array of `object`.
    
    Each item: A Product Order is a type of order which can be used to place an order between a customer and a service provider or between a service provider and a partner and vice versa
    
    A Product Order is a type of order which can be used to place an order between a customer and a service provider or between a service provider and a partner and vice versa
    
    *   `state` (_string_) Tracks the lifecycle status of the product order. The supported values are org specific and are dependent on the configuration within the org.
    *   `productOrderItem` (_array of object_, required)
        
        Each item: A list of product order items (ProductOrderItem \[1..\*\]). An identified part of the order. A product order is decomposed into one or more order items.
        
          
        Minimum items: 1.
        *   `action` (_string_, required) A string. Used to categorize the order from a business perspective that can be useful for the OM system  
            Allowed values: `add`, `modify`, `delete`, `noChange`, `Add`, `Modify`, `Delete`, `NoChange`.
        *   `id` (_string_) id of the product order item
        *   `quantity` (_integer_) quanity of a product order item
        *   `state` (_string_) State of the order item.
        *   `productOffering` (_object_) A product offering represents entities that are orderable from the provider of the catalog, this resource includes pricing information.
            *   `name` (_string_) Name of the related entity
            *   `id` (_string_, required) Unique identifier of a related entity.
        *   `productCharacteristic` (_array of object_) Describes a given characteristic of an object or entity through a name/value pair.
            *   `name` (_string_) Name of the characteristic.
            *   `value` (_any_) The value of the characteristic.
            *   `valueType` (_string_) Data type of the value of the characteristic.
        *   `productOrderItemRelationship` (_array of object_) A list of order item relationships
            *   `id` (_string_, required) unique identifier of productOrderItemRelationship.
            *   `relationshipType` (_string_, required) The type of order item relationship.
        *   `itemPrice` (_array of object_) An amount, usually of money, that represents the actual price paid by the Customer for this item or this order.
            *   `priceAlteration` (_array of object_) Is an amount, usually of money, that modifies the price charged for an order item.
                *   `name` (_string_) Name of the order item price alteration.
                *   `priceType` (_string_) A category that describes the price such as recurring, one time and usage.
                *   `price` (_object_) A price (Price). Provides all amounts (tax included, duty free, tax rate), used currency and percentage to apply for Price Alteration.
                    *   `percentage` (_number_) Percentage to apply for ProdOfferPriceAlteration.
                    *   `@type` (_string_)
        *   `orderLineItemId` (_string_) Salesforce Id of a particular Product Order Item
    *   `channel` (_array of object_) Related channel to another entity. The supported values are org specific and are dependent on the configuration within the org.
        
        Each item: Related channel to another entity. The supported values are org specific and are dependent on the configuration within the org.
        
        *   `name` (_string_, required)
    *   `href` (_string_, required) Specifies the unique reference of the Product Order.
    *   `externalId` (_string_) ID given by the consumer and only understandable by him (to facilitate his searches afterwards)
    *   `requestedStartDate` (_string_) Order fulfillment start date wished by the requestor. This is used when, for any reason, requestor cannot allow seller to begin to operationally begin the fulfillment before a date.
    *   `id` (_string_, required) Specifies the unique identifier of the Product Order.
    *   `relatedParty` (_array of object_, required)
        
        Each item: Related Entity reference. A related party defines party or party role linked to a specific entity.
        
        *   `name` (_string_, required) Name of the related entity.
        *   `href` (_string_) An uri (Uri). Hyperlink reference.
        *   `id` (_string_, required) Unique identifier of a related entity.
        *   `role` (_string_) Role played by the related party
        *   `@referredType` (_string_) The actual type of the target instance when needed for disambiguation.
        *   `@type` (_string_) When sub-classing, this defines the sub-class entity name
    *   `requestedCompletionDate` (_string_) Requested delivery date from the requestor perspective
    *   `orderDate` (_string_, required) Date when the order was created
    *   `note` (_array of object_)
        
        Each item: Extra information about a given entity.
        
        *   `text` (_string_, required)
        *   `date` (_datetime_)
        *   `id` (_string_)
    *   `description` (_string_) Description of the product order
    
    _Example_
    
    ```
    [
      {
                "channel": [
                  {
                    "id": "1",
                    "name": "Online chanel",
                    "role": "Used channel for order capture"
                  }
                ],
                "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Order/801DX000000DrBEYA0",
                "id": "00000100",
                "orderDate": "2025-02-27T12:04:54.000+0000",
                "state": "Draft",
                "relatedParty": [
                    {
                        "@type": "RelatedParty",
                        "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Account/001DX000001pAujYAE",
                        "id": "123456",
                        "name": "Acme"
                    }
                ],
                "productOrderItem": [
                    {
                        "@type": "ProductOrderItem",
                        "action": "Add",
                        "quantity": 1.00,
                        "id": "101"
                    },
                    {
                        "@type": "ProductOrderItem",
                        "action": "Add",
                        "quantity": 1.00,
                        "id": "102"
                    }
                ]
            },
            {
                "channel": [
                  {
                    "id": "1",
                    "name": "Online chanel",
                    "role": "Used channel for order capture"
                  }
                ],
                "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Order/801DX000000DrBTYA0",
                "id": "00000103",
                "orderDate": "2025-02-27T12:47:12.000+0000",
                "state": "Activated",
                "relatedParty": [
                    {
                        "@type": "RelatedParty",
                        "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Account/001DX000001pAujYAE",
                        "id": "123456",
                        "name": "Acme"
                    }
                ],
                "productOrderItem": [
                    {
                        "@type": "ProductOrderItem",
                        "action": "Add",
                        "quantity": 1.00,
                        "id": "103"
                    }
                ]
            },
            {
                "channel": [
                  {
                    "id": "1",
                    "name": "Online chanel",
                    "role": "Used channel for order capture"
                  }
                ],
                "description": "Product Order illustration sample",
                "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Order/801DX000000DrCvYAK",
                "id": "00000104",
                "note": [
            {
                "author": "Jean Pontus",
                "date": "2019-04-30T08:13:59.509Z",
                "id": "1",
                "text": "This is a TMF product order illustration"
            }
        ],
                "orderDate": "2025-02-27T13:09:58.000+0000",
                "requestedCompletionDate": "2025-05-02T00:00:00.000+0000",
                "requestedStartDate": "2024-05-03T00:00:00.000+0000",
                "state": "Activated",
                "relatedParty": [
                    {
                        "@type": "RelatedParty",
                        "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Account/001DX000001pAujYAE",
                        "id": "123456",
                        "name": "Acme"
                    }
                ],
                "productOrderItem": [
                    {
                        "@type": "ProductOrderItem",
                        "action": "Add",
                        "quantity": 1.00,
                        "id": "104"
                    }
                ]
            }
    ]
    ```
    
*   **404** Resource not found.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: NOT_FOUND
    reason: There are no matching resource.
    message: There are no data in system or not data for specified filters.
    ```
    
*   **500** Internal server error
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "500"
    reason: Internal server error
    ```
    

### GET Get Product Order

`GET /productOrder/{id}`

Retrieves a Product Order entity. Attribute selection is enabled for first-level attributes.

#### Parameters

*   `id` (path, string, required)
*   `fields` (query, string) Specifies the comma-separated properties to provide in the response.
*   `Authorization` (header, string, required) Specifies the bearer token to use for the authentication of request.
*   `Namespace` (header, string) Specifies the namespace to use with the URL path.
*   `Domain-Name` (header, string, required) Specifies the domain name to use with the URL path received from the userinfo API.

#### Responses

*   **200** Success
    
    Media type: `application/json`. Schema: `ProductOrder (extended)`.
    
    Includes all fields of `ProductOrder`.
    
    *   `href` (_string_, required) Specifies the unique reference of the Product Order.
    *   `id` (_string_, required) Specifies the unique identifier of the Product Order.
    
    _Example_
    
    ```
    {
            "channel": [
              {
                "id": "1",
                "name": "Online chanel",
                "role": "Used channel for order capture"
              }
            ],
            "description": "Product Order illustration sample",
            "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Order/801DX000000E6j8YAC",
            "id": "00000166",
            "note": [
              {
                "author": "Jean Pontus",
                "date": "2019-04-30T08:13:59.509Z",
                "id": "1",
                "text": "This is a TMF product order illustration"
              }
            ],
            "orderDate": "2025-03-10T11:53:49.000+0000",
            "requestedCompletionDate": "2019-05-02T00:00:00.000+0000",
            "requestedStartDate": "2019-05-03T00:00:00.000+0000",
            "state": "Activated",
            "relatedParty": [
                {
                    "@type": "RelatedParty",
                    "href": "/services/apexrest/devops001gs0/tmforum/productopenapi/v1/Account/001DX000001pAujYAE",
                    "id": "123456",
                    "name": "Acme"
                }
            ],
            "productOrderItem": [
                {
                    "@type": "ProductOrderItem",
                    "action": "Add",
                    "quantity": 1.00,
                    "id": "101",
                    "productOrderItemRelationship": [
                        {
                            "id": "101",
                            "relationshipType": "bundles"
                        },
                        {
                            "id": "102",
                            "relationshipType": "bundles"
                        },
                        {
                            "id": "103",
                            "relationshipType": "bundles"
                        }
                    ]
                },
                {
                    "@type": "ProductOrderItem",
                    "action": "Add",
                    "quantity": 1.00,
                    "id": "102"
                },
                {
                    "@type": "ProductOrderItem",
                    "action": "Add",
                    "quantity": 2.00,
                    "id":"105",
                    "product": {
                        "productCharacteristic": [
                            {
                                "name": "Data"
                            }
                        ]
                    }
                },
                {
                    "@type": "ProductOrderItem",
                    "action": "Add",
                    "quantity": 3.00,
                    "id":"104"
                }
            ]
        }
    ```
    
*   **404** Resource not found.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: NOT_FOUND
    reason: There are no matching resource.
    message: There are no data in system or not data for specified filters.
    ```
    
*   **500** Internal server error
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "500"
    reason: Internal server error
    ```
    

### PATCH Update Product Order

`PATCH /productOrder/{id}`

Updates the Product Order entity.

#### Parameters

*   `id` (path, string, required)
*   `Authorization` (header, string, required) Specifies the bearer token to use for the authentication of request.
*   `Namespace` (header, string) Specifies the namespace to use with the URL path.
*   `Domain-Name` (header, string, required) Specifies the domain name to use with the URL path received from the userinfo API.

#### Request body

Media type: `application/json`. Schema: `ProductOrder_Patch_request`.

Specifies the Product Order to be created.

_Example_

```
{
    "description": "Product Order illustration sample-updated",
    "productOrderItem": [
        {
            "@type": "ProductOrderItem",
            "action": "add",
            "id": "101",
            "quantity": 1,
            "productOffering": {
                "id": "iphone15"
            },
            "productOrderItemRelationship": [
                {
                    "id": "102",
                    "relationshipType": "bundles"
                }
            ]
        },
        {
            "@type": "ProductOrderItem",
            "action": "add",
            "id": "102",
            "quantity": 2,
            "productOffering": {
                "id": "Charger"
            }
        }
    ]
}
```

#### Responses

*   **200** Updated the resource.
    
    Media type: `application/json`. Schema: `ProductOrder (extended)`.
    
    Includes all fields of `ProductOrder`.
    
    *   `href` (_string_, required) Specifies the unique reference of the Product Order.
    *   `id` (_string_, required) Specifies the unique identifier of the Product Order.
    
    _Example_
    
    ```
    {
        "channel": [
            {
                "role": "Used channel for order capture",
                "name": "Online chanel",
                "id": "1"
            }
        ],
        "note": [
            {
                "text": "This is a TMF product order illustration",
                "id": "1",
                "date": "2019-04-30T08:13:59.509Z",
                "author": "Jean Pontus"
            }
        ],
        "productOrderItem": [
            {
                "productOffering": {
                    "id": "SIMCard"
                },
                "quantity": 1.00,
                "id": "105",
                "action": "Add",
                "@type": "ProductOrderItem"
            },
            {
                "productOffering": {
                    "id": "iphone15"
                },
                "productOrderItemRelationship": [
                    {
                        "relationshipType": "bundles",
                        "id": "105"
                    }
                ],
                "quantity": 1.00,
                "id": "104",
                "action": "Add",
                "@type": "ProductOrderItem"
            },
            {
                "productOffering": {
                    "id": "SIMCard"
                },
                "quantity": 1.00,
                "id": "103",
                "action": "Add",
                "@type": "ProductOrderItem"
            },
            {
                "productOffering": {
                    "id": "iphone15"
                },
                "productOrderItemRelationship": [
                    {
                        "relationshipType": "bundles",
                        "id": "103"
                    },
                    {
                        "relationshipType": "bundles",
                        "id": "102"
                    }
                ],
                "quantity": 1.00,
                "id": "101",
                "action": "Add",
                "@type": "ProductOrderItem"
            },
            {
                "product": {
                    "productCharacteristic": [
                        {
                            "name": "ABP-INT"
                        }
                    ]
                },
                "productOffering": {
                    "id": "Charger"
                },
                "quantity": 2.00,
                "id": "102",
                "action": "Add",
                "@type": "ProductOrderItem"
            }
        ],
        "relatedParty": [
            {
                "name": "TMF622",
                "id": "123",
                "href": "/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/Account/001xx000003GfJrAAK",
                "@type": "RelatedParty",
                "role": "Billing"
            }
        ],
        "state": "Draft",
        "requestedStartDate": "2019-05-03T00:00:00.000+0000",
        "requestedCompletionDate": "2019-05-02T00:00:00.000+0000",
        "orderDate": "2025-05-16T10:30:16.000+0000",
        "id": "00000261",
        "href": "/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/Order/801xx000003GhrvAAC",
        "externalId": "PO-456",
        "description": "Product Order illustration sample-updated"
    }
    ```
    
*   **400** There was an issue with your request.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "400"
    reason: The provided payload contains invalid or non-patchable fields
    ```
    
*   **404** Resource not found.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "404"
    reason: We couldn't find the Account in your salesforce org.
    ```
    
*   **500** Internal server error
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example_
    
    ```
    code: "500"
    reason: Internal server error
    ```
    

### POST Post inbound notification

`POST /productOrder/productOrderInboundNotification`

Changes to entity based on the notification event.

#### Parameters

*   `Authorization` (header, string, required) Specifies the bearer token to use for the authentication of request.
*   `Namespace` (header, string) Specifies the namespace to use with the URL path.
*   `Domain-Name` (header, string, required) Specifies the domain name to use with the URL path received from the userinfo API.

#### Request body

Media type: `application/json`. Schema: `ProductOrder_InboundNotification`.

Specifies the <\> to handle the entity.

_Example_

```
{
    "eventId" : "001",
    "eventType" : "ProductOrderStateChangeEvent",
    "event": {
        "productOrder": {
             "id":"00000100",
             "state":"Draft"
        }
    }
}
```

#### Responses

*   **200** Success
*   **404** Resource not found

## Schemas

### ProductOrder\_Create

A Product Order is a type of order which can be used to place an order between a customer and a service provider or between a service provider and a partner and vice versa

*   `description` (_string_) Description of the product order
*   `externalId` (_string_) ID given by the consumer and only understandable by him (to facilitate his searches afterwards)
*   `requestedCompletionDate` (_string_) Requested delivery date from the requestor perspective
*   `requestedStartDate` (_string_, required) Order fulfillment start date wished by the requestor. This is used when for any reason requestor cannot allow seller to begin to operationally begin the fulfillment before a date.
*   `orderDate` (_string_) Specifies the date when the order was created.
*   `channel` (_array of object_)
    
    Includes all fields of `channelRef`.
    
*   `note` (_array of object_)
    
    Includes all fields of `noteRef`.
    
*   `productOrderItem` (_array of object_, required)  
    Minimum items: 1.
    
    Includes all fields of `ProductOrderItem_POST_Create`.
    
*   `relatedParty` (_array of object_, required)
    
    Includes all fields of `RelatedParty`.
    
*   `state` (_string_) Tracks the lifecycle status of the product order. The supported values are org specific and are dependent on the configuration within the org.
*   `submitCart` (_boolean_) If 'submitCart' is present and its value is false then we will not submit the order and if it is true we will submit the order.

### ProductOrder\_POST\_Response

A Product Order Post response is a type of order which we get after successful post request

*   `description` (_string_) Description of the product order
*   `externalId` (_string_) ID given by the consumer and only understandable by him (to facilitate his searches afterwards)
*   `requestedCompletionDate` (_string_) Requested delivery date from the requestor perspective
*   `requestedStartDate` (_string_, required) Order fulfillment start date wished by the requestor. This is used when for any reason requestor cannot allow seller to begin to operationally begin the fulfillment before a date.
*   `orderDate` (_string_) Specifies the date when the order was created.
*   `channel` (_array of object_) Related channel to another entity. The supported values are org specific and are dependent on the configuration within the org.
    
    Includes all fields of `channelRef`.
    
*   `note` (_array of object_)
    
    Includes all fields of `noteRef`.
    
*   `productOrderItem` (_array of object_, required)  
    Minimum items: 1.
    
    Includes all fields of `ProductOrderItem_POST_Response`.
    
*   `relatedParty` (_array of object_, required)
    
    Includes all fields of `RelatedParty`.
    
*   `state` (_string_) Tracks the lifecycle status of the product order. The supported values are org specific and are dependent on the configuration within the org.

### Error

Used when an API throws an Error, typically with a HTTP error response-code (3xx, 4xx, 5xx)

*   `code` (_string_, required) Application relevant detail, defined in the API or a common list.
*   `reason` (_string_, required) Explanation of the reason for the error which can be shown to a client user.
*   `message` (_string_) Provides additional details and corrective actions related to the error, which can be shown to a client user.

### ProductOrder

A Product Order is a type of order which can be used to place an order between a customer and a service provider or between a service provider and a partner and vice versa

*   `id` (_string_, required) ID created on repository side (OM system)
*   `href` (_string_, required) Hyperlink to access the order
*   `description` (_string_) Description of the product order
*   `externalId` (_string_) ID given by the consumer and only understandable by him (to facilitate his searches afterwards)
*   `orderDate` (_string_, required) Date when the order was created
*   `requestedCompletionDate` (_string_) Requested delivery date from the requestor perspective
*   `requestedStartDate` (_string_) Order fulfillment start date wished by the requestor. This is used when, for any reason, requestor cannot allow seller to begin to operationally begin the fulfillment before a date.
*   `channel` (_array of object_) Related channel to another entity. The supported values are org specific and are dependent on the configuration within the org.
    
    Includes all fields of `channelRef`.
    
*   `note` (_array of object_)
    
    Includes all fields of `noteRef`.
    
*   `productOrderItem` (_array of object_, required)  
    Minimum items: 1.
    
    Includes all fields of `ProductOrderItem`.
    
*   `relatedParty` (_array of object_, required)
    
    Includes all fields of `RelatedParty`.
    
*   `state` (_string_) Tracks the lifecycle status of the product order. The supported values are org specific and are dependent on the configuration within the org.

### ProductOrder\_Patch\_request

A Product Order Patch request contains the product order we need to Patch

*   `description` (_string_) Description of the product order
*   `externalId` (_string_) ID given by the consumer and only understandable by him (to facilitate his searches afterwards)
*   `requestedCompletionDate` (_string_) Requested delivery date from the requestor perspective
*   `requestedStartDate` (_string_) Order fulfillment start date wished by the requestor. This is used when, for any reason, requestor cannot allow seller to begin to operationally begin the fulfillment before a date.
*   `channel` (_array of object_) Related channel to another entity. The supported values are org specific and are dependent on the configuration within the org.
    
    Includes all fields of `channelRef`.
    
*   `note` (_array of object_)
    
    Includes all fields of `noteRef`.
    
*   `productOrderItem` (_array of object_)
    
    Includes all fields of `ProductOrderItem`.
    
*   `state` (_string_) Tracks the lifecycle status of the product order. The supported values are org specific and are dependent on the configuration within the org.

### ProductOrder\_InboundNotification

A product order Inbound notification for changing the state of an entity

*   `eventId` (_string_) identifier of an event
*   `eventType` (_string_, required) type of an inbound notification
*   `event` (_object_, required) event object the notification related to
    
    Includes all fields of `ProductOrderStateChangeEvent`.
    

### channelRef

Related channel to another entity. The supported values are org specific and are dependent on the configuration within the org.

*   `name` (_string_, required)

### noteRef

Extra information about a given entity.

*   `text` (_string_, required)
*   `date` (_datetime_)
*   `id` (_string_)

### ProductOrderItem\_POST\_Create

A list of product order items (ProductOrderItem \[1..\*\]). An identified part of the order. A product order is decomposed into one or more order items.

*   `action` (_OrderItemActionType (string)_, required) A string. Used to categorize the order from a business perspective that can be useful for the OM system
*   `id` (_string_) id of the product order item
*   `quantity` (_integer_) quanity of a product order item
*   `state` (_string_) State of the order item.
*   `productOffering` (_object_) A product offering represents entities that are orderable from the provider of the catalog, this resource includes pricing information.
    
    Includes all fields of `productOfferingRef`.
    
*   `productCharacteristic` (_array of productCharacteristicRef_) Describes a given characteristic of an object or entity through a name/value pair.
*   `productOrderItemRelationship` (_array of productOrderItemRelationshipRef_) A list of order item relationships

### RelatedParty

Related Entity reference. A related party defines party or party role linked to a specific entity.

*   `name` (_string_, required) Name of the related entity.
*   `href` (_string_) An uri (Uri). Hyperlink reference.
*   `id` (_string_, required) Unique identifier of a related entity.
*   `role` (_string_) Role played by the related party
*   `@referredType` (_string_) The actual type of the target instance when needed for disambiguation.
*   `@type` (_string_) When sub-classing, this defines the sub-class entity name

### ProductOrderItem\_POST\_Response

A list of product order items (ProductOrderItem \[1..\*\]). An identified part of the order. A product order is decomposed into one or more order items.

*   `action` (_OrderItemActionType (string)_, required) A string. Used to categorize the order from a business perspective that can be useful for the OM system
*   `id` (_string_) id of the product order item
*   `quantity` (_integer_) quanity of a product order item
*   `state` (_string_) State of the order item.
*   `productOffering` (_object_) A product offering represents entities that are orderable from the provider of the catalog, this resource includes pricing information.
    
    Includes all fields of `productOfferingRef`.
    
*   `productCharacteristic` (_array of productCharacteristicRef_) Describes a given characteristic of an object or entity through a name/value pair.
*   `productOrderItemRelationship` (_array of productOrderItemRelationshipRef_) A list of order item relationships
*   `orderLineItemId` (_string_) Salesforce Id of a particular Product Order Item

### ProductOrderItem

A list of product order items (ProductOrderItem \[1..\*\]). An identified part of the order. A product order is decomposed into one or more order items.

*   `action` (_OrderItemActionType (string)_, required) A string. Used to categorize the order from a business perspective that can be useful for the OM system
*   `id` (_string_) id of the product order item
*   `quantity` (_integer_) quanity of a product order item
*   `state` (_string_) State of the order item.
*   `productOffering` (_object_) A product offering represents entities that are orderable from the provider of the catalog, this resource includes pricing information.
    
    Includes all fields of `productOfferingRef`.
    
*   `productCharacteristic` (_array of productCharacteristicRef_) Describes a given characteristic of an object or entity through a name/value pair.
*   `productOrderItemRelationship` (_array of productOrderItemRelationshipRef_) A list of order item relationships
*   `itemPrice` (_array of itemPriceRef_) An amount, usually of money, that represents the actual price paid by the Customer for this item or this order.
*   `orderLineItemId` (_string_) Salesforce Id of a particular Product Order Item

### ProductOrderStateChangeEvent

State change event that holds product order

*   `productOrder` (_object_, required) Product order object
    
    Includes all fields of `ProductOrderStateChangeObject`.
    

### OrderItemActionType

action to be performed on the product

Type: `string`.

Allowed values: `add`, `modify`, `delete`, `noChange`, `Add`, `Modify`, `Delete`, `NoChange`.

### productOfferingRef

*   `name` (_string_) Name of the related entity
*   `id` (_string_, required) Unique identifier of a related entity.

### productCharacteristicRef

*   `name` (_string_) Name of the characteristic.
*   `value` (_any_) The value of the characteristic.
*   `valueType` (_string_) Data type of the value of the characteristic.

### productOrderItemRelationshipRef

*   `id` (_string_, required) unique identifier of productOrderItemRelationship.
*   `relationshipType` (_string_, required) The type of order item relationship.

### itemPriceRef

*   `priceAlteration` (_array of priceAlterationRef_) Is an amount, usually of money, that modifies the price charged for an order item.

### ProductOrderStateChangeObject

Product order object

*   `id` (_string_, required) identifier of a product order
*   `state` (_string_, required) state to which the product order changed

### priceAlterationRef

*   `name` (_string_) Name of the order item price alteration.
*   `priceType` (_string_) A category that describes the price such as recurring, one time and usage.
*   `price` (_object_) A price (Price). Provides all amounts (tax included, duty free, tax rate), used currency and percentage to apply for Price Alteration.
    
    Includes all fields of `priceRef`.
    

### priceRef

*   `percentage` (_number_) Percentage to apply for ProdOfferPriceAlteration.
*   `@type` (_string_)