MEF Product Ordering Management (Mef Lso Sonata Product Order Management)
MEF Product Ordering Management from MEF — 10 path(s) described in OpenAPI.
MEF Product Ordering Management from MEF — 10 path(s) described in OpenAPI.
openapi: 3.0.1
info:
title: Product Ordering Management
description: >
**This file forms part of Mplify 123.1**
This API implements Business Requirements described in MEF 57.2 and Mplify
57.2.1
Product Order Management allows the Buyer to request the Seller to initiate
and complete the
fulfillment process of an installation of a Product Offering, an update to
an existing Product, or a disconnect of an existing Product at the address
defined by the Buyer.
List of supported Use Cases:
- Create Product Order
- Update Product Order by Product Order Identifier
- Retrieve List of Product Orders
- Retrieve Product Order by Product Order Identifier
- Modify Product Order Item Requested Delivery Date
- Retrieve Modify Product Order Item Requested Delivery Date List
- Retrieve Modify Product Order Item Requested Delivery Date by Identifier
- Cancel Product Order
- Retrieve List of Cancel Product Orders
- Retrieve Cancel Product Order Request by Cancel Product Order Identifier
- Respond to Charge
- Retrieve List of Charges
- Retrieve Charge by Charge Identifier
- Register for Notifications
Copyright 2025 Mplify Alliance and its contributors
This file includes content based on the TM Forum Product Order API (TMF622
v4.0.0) available at https://github.com/tmforum-apis/TMF622_ProductOrder,
which is licensed by the TM Forum under the Apache License version 2.0. Such
content has been modified by the Mplify Alliance and its contributors.
version: 11.0.1
servers:
- url: 'https://{serverBase}/mefApi/sonata/productOrderingManagement/v11/'
variables:
serverBase:
description: The base of Seller's URL.
default: mplify.net
tags:
- name: productOrder
- name: cancelProductOrder
- name: charge
- name: modifyProductOrderItemRequestedDeliveryDate
- name: events subscription
paths:
/productOrder:
get:
tags:
- productOrder
summary: Lists or finds ProductOrder objects
description: This operation lists or finds ProductOrder entities
operationId: listProductOrder
parameters:
- name: state
in: query
description: State of the Product Order
required: false
schema:
type: string
enum:
- acknowledged
- assessingCancellation
- cancelled
- completed
- failed
- held.assessingCharge
- inProgress
- partial
- pending.assessingModification
- pendingCancellation
- rejected
- name: externalId
in: query
description: >-
A number that uniquely identifies an order within the Buyer's
enterprise.
required: false
schema:
type: string
- name: projectId
in: query
description: >-
An identifier that is used to group Product Orders that represent a
unit of functionality that is important to a Buyer.
required: false
schema:
type: string
- name: orderDate.gt
in: query
description: Date when the order was created greater than
required: false
schema:
type: string
format: date-time
- name: orderDate.lt
in: query
description: Date when the order was created lesser than
required: false
schema:
type: string
format: date-time
- name: completionDate.gt
in: query
description: Effective completion date greater than
required: false
schema:
type: string
format: date-time
- name: completionDate.lt
in: query
description: Effective completion date lesser than
required: false
schema:
type: string
format: date-time
- name: itemRequestedCompletionDate.gt
in: query
description: >-
This is requested date to get this Product Order Item completed
greater than
required: false
schema:
type: string
format: date-time
- name: itemRequestedCompletionDate.lt
in: query
description: >-
This is requested date to get this Product Order Item completed
lesser than
required: false
schema:
type: string
format: date-time
- name: itemExpectedCompletionDate.gt
in: query
description: >-
Seller planned completion date of the Product Order Item, greater
than
required: false
schema:
type: string
format: date-time
- name: itemExpectedCompletionDate.lt
in: query
description: >-
Seller planned completion date of the Product Order Item, lesser
than
required: false
schema:
type: string
format: date-time
- name: cancellationDate.gt
in: query
description: order cancellation date greater than
required: false
schema:
type: string
format: date-time
- name: cancellationDate.lt
in: query
description: order cancellation date lesser than
required: false
schema:
type: string
format: date-time
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when the responding
entity represents more than one Seller.
required: false
schema:
type: string
- name: offset
in: query
description: >-
Requested index for start of item to be provided in response
requested by the client. Note that the index starts with "0".
required: false
schema:
type: integer
format: int32
- name: limit
in: query
description: >-
Requested number of items to be provided in response requested by
client
required: false
schema:
type: integer
format: int32
responses:
'200':
description: 'OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1)'
headers:
X-Pagination-Throttled:
description: >
Used to indicate that result page was throttled to maximum
possible size and there are additional results that can be
fetched
schema:
type: boolean
X-Total-Count:
description: >
The total number of matching items. E.g. if there are 50
matching items in total, but the request has offset=10 and
limit=10, then the X-Total-Count is 50.
schema:
type: integer
X-Result-Count:
description: The number of items included in the response
schema:
type: integer
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/ProductOrder_Find'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
post:
tags:
- productOrder
summary: Creates a ProductOrder
description: This operation creates a ProductOrder entity.
operationId: createProductOrder
parameters:
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when the responding
entity represents more than one Seller.
required: false
schema:
type: string
requestBody:
description: The ProductOrder to be created
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ProductOrder_Create'
required: true
responses:
'201':
description:
'Created (https://tools.ietf.org/html/rfc7231#section-6.3.2)'
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ProductOrder'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'/productOrder/{id}':
get:
tags:
- productOrder
summary: Retrieves a ProductOrder by ID
description: This operation retrieves a ProductOrder entity.
operationId: retrieveProductOrder
parameters:
- name: id
in: path
description: Identifier of the ProductOrder
required: true
schema:
type: string
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when responding
entity represents more than one Seller.
required: false
schema:
type: string
responses:
'200':
description: 'OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1)'
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ProductOrder'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Not Found
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
patch:
tags:
- productOrder
summary: Updates partially a ProductOrder
description: This operation updates partially a ProductOrder entity.
operationId: patchProductOrder
parameters:
- name: id
in: path
description: Identifier of the ProductOrder
required: true
schema:
type: string
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when responding
entity represents more than one Seller.
required: false
schema:
type: string
requestBody:
description: The ProductOrder to be updated
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ProductOrder_Update'
required: true
responses:
'200':
description:
'Updated (https://tools.ietf.org/html/rfc7231#section-6.3.1)'
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/ProductOrder'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Not Found
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error404'
'409':
description: Conflict
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error409'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'501':
description: Method not implemented.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error501'
/cancelProductOrder:
get:
tags:
- cancelProductOrder
summary: Lists or finds CancelProductOrder objects
description: This operation lists or finds CancelProductOrder entities
operationId: listCancelProductOrder
parameters:
- name: productOrderId
in: query
required: false
schema:
type: string
- name: state
in: query
required: false
schema:
type: string
enum:
- acknowledged
- done
- done.declined
- inProgress.assessingCharge
- rejected
- name: cancellationReasonType
in: query
description: >-
Identifies the type of reason, Technical or Commercial, for the
Cancellation request
required: false
schema:
type: string
enum:
- technical
- commercial
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when responding
entity represents more than one Seller.
required: false
schema:
type: string
- name: offset
in: query
description: >-
Requested index for start of item to be provided in response
requested by client. Note that the index starts with "0".
required: false
schema:
type: integer
format: int32
- name: limit
in: query
description: >-
Requested number of items to be provided in response requested by
client
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Success
headers:
X-Pagination-Throttled:
description: >
Used to indicate that result page was throttled to maximum
possible size and there are additional results that can be
fetched
schema:
type: boolean
X-Total-Count:
description: >
The total number of matching items. E.g. if there are 50
matching items in total, but the request has offset=10 and
limit=10, then the X-Total-Count is 50.
schema:
type: integer
X-Result-Count:
description: The number of items included in the response
schema:
type: integer
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/CancelProductOrder_Find'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'501':
description: Method not implemented.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error501'
post:
tags:
- cancelProductOrder
summary: Creates a CancelProductOrder
description: This operation creates a CancelProductOrder entity.
operationId: createCancelProductOrder
parameters:
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when responding
entity represents more than one Seller.
required: false
schema:
type: string
requestBody:
description: The CancelProductOrder to be created
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/CancelProductOrder_Create'
required: true
responses:
'201':
description: Created
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/CancelProductOrder'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'501':
description: Method not implemented.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error501'
'/cancelProductOrder/{id}':
get:
tags:
- cancelProductOrder
summary: Retrieves a CancelProductOrder by ID
description: This operation retrieves a CancelProductOrder entity.
operationId: retrieveCancelProductOrder
parameters:
- name: id
in: path
description: Identifier of the CancelProductOrder
required: true
schema:
type: string
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when responding
entity represents more than one Seller.
required: false
schema:
type: string
responses:
'200':
description: Success
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/CancelProductOrder'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'404':
description: Not Found
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error404'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'501':
description: Method not implemented.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error501'
/charge:
get:
tags:
- charge
summary: Lists or finds Charge objects
description: This operation lists or finds Charge entities
operationId: listCharge
parameters:
- name: productOrderId
in: query
description: id of the Product Order this Charge relates to.
required: false
schema:
type: string
- name: productOrderItemId
in: query
description: id of the Product Order Item this Charge relates to.
required: false
schema:
type: string
- name: creationDate.gt
in: query
description:
Date that the Charge was created by the Seller (greater than)
required: false
schema:
type: string
format: date-time
- name: creationDate.lt
in: query
description:
Date that the Charge was created by the Seller. (greater than)
required: false
schema:
type: string
format: date-time
- name: responseDueDate.gt
in: query
description: >-
The date that the Buyer must respond to the Seller's Charge. If
there is no response received by the Due Date the Seller will treat
all charges as declined (greater than)
required: false
schema:
type: string
format: date-time
- name: responseDueDate.lt
in: query
description: >-
The date that the Buyer must respond to the Seller's Charge. If
there is no response received by the Due Date the Seller will treat
all charges as declined (greater than)
required: false
schema:
type: string
format: date-time
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
represents more than one Buyer.
required: false
schema:
type: string
- name: sellerId
in: query
description: >-
The unique identifier of the organization that is acting as the
Seller. MUST be specified in the request only when responding
entity represents more than one Seller.
required: false
schema:
type: string
- name: offset
in: query
description: >-
Requested index for start of item to be provided in response
requested by client. Note that the index starts with "0".
required: false
schema:
type: integer
format: int32
- name: limit
in: query
description: >-
Requested number of items to be provided in response requested by
client
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Success
headers:
X-Pagination-Throttled:
description: >
Used to indicate that result page was throttled to maximum
possible size and there are additional results that can be
fetched
schema:
type: boolean
X-Total-Count:
description: >
The total number of matching items. E.g. if there are 50
matching items in total, but the request has offset=10 and
limit=10, then the X-Total-Count is 50.
schema:
type: integer
X-Result-Count:
description: The number of items included in the response
schema:
type: integer
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/MEFProductOrderCharge_Find'
'400':
description: Bad Request
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error400'
'401':
description: Unauthorized
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error401'
'403':
description: Forbidden
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error403'
'422':
description:
Unprocessable entity due to the business validation problems
content:
application/json;charset=utf-8:
schema:
type: array
items:
$ref: '#/components/schemas/Error422'
'500':
description: Internal Server Error
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error500'
'501':
description: Method not implemented.
content:
application/json;charset=utf-8:
schema:
$ref: '#/components/schemas/Error501'
'/charge/{id}':
get:
tags:
- charge
summary: Retrieves a Charge by ID
description: This operation retrieves a Charge entity.
operationId: retrieveCharge
parameters:
- name: id
in: path
description: Identifier of the Charge
required: true
schema:
type: string
- name: buyerId
in: query
description: >-
The unique identifier of the organization that is acting as the a
Buyer. MUST be specified in the request only when the requester
# --- truncated at 32 KB (168 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mef/refs/heads/main/openapi/mef-lso-sonata-product-order-management-openapi.yml