Order Fulfillment App Accelerator Guide
Order Fulfillment App Accelerator Guide
Implementation Guide
24.1
©2024 Pegasystems Inc., Cambridge, MA. All rights reserved.
Trademarks
For Pegasystems Inc. trademarks and registered trademarks, all rights reserved. All other trademarks or
service marks are property of their respective holders.
For information about the third-party software that is delivered with the product, refer to the third-party
license file on your installation media that is specific to your release.
Notices
This publication describes and/or represents products and services of Pegasystems Inc. It may contain
trade secrets and proprietary information that are protected by various federal, state, and international
laws, and distributed under licenses restricting their use, copying, modification, distribution, or transmittal
in any form without prior written authorization of Pegasystems Inc.
This publication is current as of the date of publication only. Changes to the publication may be
made from time to time at the discretion of Pegasystems Inc. This publication remains the property
of Pegasystems Inc. and must be returned to it upon request. This publication does not imply any
commitment to offer or deliver the products or services described herein.
This publication may include references to Pegasystems Inc. product features that have not been licensed
by you or your company. If you have questions about whether a particular capability is included in your
installation, please consult your Pegasystems Inc. services consultant.
Although Pegasystems Inc. strives for accuracy in its publications, any publication may contain
inaccuracies or typographical errors, as well as technical inaccuracies. Pegasystems Inc. shall not be liable
for technical or editorial errors or omissions contained herein. Pegasystems Inc. may make improvements
and/or changes to the publication at any time without notice.
Any references in this publication to non-Pegasystems websites are provided for convenience only and
do not serve as an endorsement of these websites. The materials at these websites are not part of the
material for Pegasystems products, and use of those websites is at your own risk.
Information concerning non-Pegasystems products was obtained from the suppliers of those products,
their publications, or other publicly available sources. Address questions about non-Pegasystems
products to the suppliers of those products.
This publication may contain examples used in daily business operations that include the names of
people, companies, products, and other third-party publications. Such examples are fictitious and any
similarity to the names or other data used by an actual business enterprise or individual is coincidental.
This document is the property of:
Pegasystems Inc.
1 Main Street
Cambridge, MA 02142, U.S.A.
Phone: 888-PEGA-NOW
[Link]
Document: Order Fulfillment Application Accelerator Implementation Guide
Publication date: October 9, 2024
Feedback
If you have comments for how we can improve our materials, send an email to AppDocBug@[Link].
ii | Order Fulfillment Orchestration Accelerator Implementation Guide
Contents
Contents
Document: Order Fulfillment Application Accelerator Implementation Guide ................................................................................ 2
Intended audience .................................................................................................................................................................................. 4
Prerequisites ............................................................................................................................................................................................ 4
Product overview ..................................................................................................................................................................................... 5
Communications features .......................................................................................................................................... 5
Specifications ............................................................................................................................................................... 6
Specification and Task Fulfillment Association ......................................................................................................... 7
Order decomposition .................................................................................................................................................. 8
Order orchestration .................................................................................................................................................... 8
Standard case types .................................................................................................................................................... 9
Order Fulfillment Application starter kit ............................................................................................................................................. 10
What is included .................................................................................................................................................................................... 11
Application rules ........................................................................................................................................................ 11
Rulesets ...................................................................................................................................................................... 11
Case types .................................................................................................................................................................. 12
Data models ............................................................................................................................................................... 14
Order Request.......................................................................................................................................................................... 14
Case type (Work) data elements ............................................................................................................................................ 14
Order Fulfillment Template .................................................................................................................................................... 15
Work groups and work queues ................................................................................................................................ 18
Access groups ............................................................................................................................................................ 18
Portals and dashboard .............................................................................................................................................. 19
Landing Pages ............................................................................................................................................................ 19
TMForum APIs ............................................................................................................................................................ 20
Product Ordering Management API (TMF 622)..................................................................................................................... 20
Service Ordering Management API (TMF 641). ..................................................................................................................... 23
Extending Order Fulfillment Application Accelerator ........................................................................................................................ 27
Implementation approach ........................................................................................................................................ 27
Team responsibilities .............................................................................................................................................................. 27
Roles and responsibilities ....................................................................................................................................................... 27
Creating a new operator ID ...................................................................................................................................... 28
Creating a new application ....................................................................................................................................... 28
Updating dynamic class referencing........................................................................................................................ 29
Updating the access group of the service package ................................................................................................ 29
Updating the fulfillment association data records ................................................................................................. 29
Creating new fulfillment tasks .................................................................................................................................. 30
Configuring a default email account ........................................................................................................................ 30
Appendix A Order Hierarchy Schema.................................................................................................................................................. 32
Appendix B Order fulfillment data classes and database mapping ................................................................................................. 36
Appendix C SpecificationDetail structure - Fulfillment template...................................................................................................... 37
Appendix D Defining additional dependencies at the top-level in Order Fulfillment template .................................................... 38
Appendix E Support of Modify, Change and Delete operations of OFA Accelerator ...................................................................... 39
• Intended audience
• Prerequisites
• Product overview
• Order Fulfillment Application starter kit
• What is included
• Extending Order Fulfillment Application Accelerator
• Appendix A Order Hierarchy Schema
• Appendix B Order fulfillment data classes and database mapping
• Appendix C Specification Detail structure - Fulfillment template
• Appendix D Defining additional dependencies at the top-level in Order Fulfillment template
• Appendix E Support of Modify, Change and Delete operations of OFA Accelerator
Intended audience
This guide is intended for the following users who implement Order Fulfillment Application Accelerator
based solutions.
Business managers
Evaluate solutions.
Possess a general, non-technical understanding of the features and capabilities of the application.
Prerequisites
Product Order or Service Order can either be consumed by customer based on requirements. They
are built on Order Fulfillment application which is shipped along with both the application. Customer
can switch between the applications according to the needs. Order Fulfillment Application Accelerator
24.1 requires Pega Platform 24.1.
Product overview
The Order Fulfillment Application Accelerator provides a set of features designed to fast-track the
development of an order fulfillment application. This accelerator provides the latest technologies to
reduce the time to configure product hierarchy, enhance customer experience, and improve user
productivity. The optional Order Fulfillment template empowers product managers to define the product,
service, resource, and their dependencies for a fulfillment plan. These features accommodate
requirements for the telecom industry and can be adopted by any industry. Instead of a Pega developer,
a citizen developer can define a case workflow template for Service Order and Resource Order.
• Communications features.
• Specifications (Order Fulfillment Template prior 8.7).
• Specification and Task Fulfillment Association.
• Order decomposition.
• Order reports.
• Order orchestration.
• Standard case types.
Communications features
Product Order services
industry standard objects and properties. All applications conforming to TMF622 use the same
API interface and make it easy to integrate. Product Order services include Create, Amend,
Delete and Retrieve in REST formats with json.
Specifications
The Specification case type represents how an order case will be traversed. It contains the fulfillment
plans available in the application and is populated by clients. The fulfillment plans define the entire order
life cycle.
The Order Fulfillment Template was a separate component prior to version 8.7 which provides a business-
friendly environment to manage the service catalog of a client. Some artifacts from Order Fulfillment
template are still in use, however there is a subtlety in the way the template works now. Fulfillment
Template is re-organized and managed by specifications. The specification type determines the type of
the specifications that can be created, where child specifications can be added to provide the fulfillment
structure for decomposition purpose. Here are the specifications.
• Product
• Service
• Resource
These specifications combine to make the product hierarchy for any customer-facing service. This
hierarchy includes the key capabilities: product specification, service specification, resource specification,
case dependency definition, and point of no return.
• The product specification in the application is a Specification case (S-XXXX created) which is present in
the same worktable. The product manager defines the product hierarchy aligned to the fulfillment
plan. This accelerates time-to-market because many product introductions are commercial in nature
and have no effect on the technical fulfillment.
• Fulfillment cases are defined in fulfillment plans to maximize reuse. For example, a move order can
simply be an add order (at the new location) and a disconnect order (at the old location). Because
these cases already exist, they simply need to be added to the fulfillment plan for the move order. This
accelerates time-to-value in many Fulfillments Control Center (FCC) implementations.
• Case dependencies are easily configured by using the fulfillment plan. Case dependencies define the
dependencies between service orders and the sequence of execution. For example, you want the ship
equipment case to be completed before the site installation case starts.
• The point of no return (PONR) feature is a configuration available in the fulfillment plan case. PONR
enables the user to configure the end point for the case after which the customer order cannot be
modified or amended. After the order reaches the point of no return, it can only be canceled.
Order actions.
Order actions determine the action at the customer order level. There are two types of order
actions: New and In-Flight. New order actions imply that the order is newly created for adding new
products and services or managing existing products and services. In-Flight order actions imply that
an order that is in progress needs changes. For in-flight orders, a fulfillment plan is not
recommended to be created. The productOrder/{id} and serviceOrder/{id} services
handle in flight order amendments.
The following new order actions have been defined out of the box. You can create additional order
actions as needed.
Order action Description Supported order item actions
Order item action determines the action to be taken on the line item of a customer order. The ADD
action is provided out of the box. You can create additional order item actions as needed.
Order decomposition
The fulfillment plan enables the user to define a unique scenario, for each product specification, when a
product order or service order is received by the application. The fulfillment plans include two key
capabilities: product hierarchy and fulfillment workflow for each node in the hierarchy. The order
fulfillment template contains the complete fulfillment process for every order action and order item
action.
During order decomposition, a product order is created based on product, service, resource specification
hierarchy, and fulfillment tasks association. A customer order has product order line items mapped to
line items defined in Order JSON, service and resource order mapped to service, and resource entities
defined in the hierarchy. The order also defines three types of dependencies:
• Parent child hierarchy dependency, that is, the Parent PO/SO can be proceeded only after the children
are completed.
• Dependencies among siblings based on dependencies defined in product, service, and resource
specification cases.
• Dependencies among product order line items based on order item relationship as defined in Order
JSON
Order orchestration
The Order Fulfillment Application Accelerator orchestrates an order based on the fulfillment plan
configured in the system.
On creation of the Product/Service order, Order Line Items cases and the Fulfillment cases are created
asynchronously through a Queue Processor “AsyncCreateOLICases”. It has dependency on these DSS
whether to create the cases asynchronously or sequentially. After all the child cases are resolved, the
parent case moves to the resolution stage. In addition to this child resolution dependency, the
ResolvePOLIcases queue processor, in the background, resolves the sibling dependencies defined in
the fulfillment plan. The queue processor runs the ResolveDependencies activity in the background so
that online users do not experience wait time as they complete fulfillment tasks. Here are DSS’ which are
responsible in asynchronous case creation:
• OrderFulfillment • OLI/AsyncProcessingSwitch
• OrderFulfillment • OLI/AsyncWaitTime
Product/Service order
A product/service order manages the end-to-end life cycle of a customer request for products. The
order can handle suspend, resume, amend, add, change, and cease existing ordered products and
services. This case type manages different stages of the product order and is the parent for product
line-item cases.
Fulfillment cases
Fulfillment cases are service and resource orders. These cases contain the data required to fulfill the
product orders and are designed to manage different stages of orders. Specific service and resource
orders (for example, Configure Router) should be inherited from this base case type.
All fulfillment cases have been designed in a way that they are easily extended to meet
implementation specific requirements. Additional cases can be added by using Pega Platform case
management capabilities.
Order Fulfillment Application Accelerator provides the following Service and Resource fulfillment case
types out-of-the-box and can be selected while running the New Application wizard.
Specification
This case type contains the hierarchy of the fulfillment cases.
The reference application includes rulesets that you reference when building your own solution.
Note: You build your solution on top of this reference application.
What is included
• Application rule
• Rulesets
• Case types
• Data models
• Work groups and work queues
• Personas
• Access groups
• Portals and dashboard
• TMForum APIs
Application rules
Product Order: The application rule is built on application OrderFulfillment 8. This application
contains the rules and classes specific to Product Order implementation layer. The application rule
is ProductOrder 8.
Service Order: The application rule is built on application OrderFulfillment 8. This application
contains the rules and classes specific to Product Order implementation layer. The application rule
is ServiceOrder 8.
OrderFulfillment : This application is built on Platform 8.24.1 using the Pega Constellation Design
system. This application contains the common functionalities of ProductOrder and ServiceOrder
applications. The application rule is OrderFulfillment 8.
Rulesets
The Order Fulfillment Application Accelerator consists of the following rulesets:
ProductOrder
Contains rules specific to ProductOrder application layer.
ProductOrderInt
Interface rules of Product Order.
ServiceOrder
Contains rules specific to ServiceOrder application layer.
ServiceOrderInt
Interface rules of ServiceOrder.
Accel
Contains base class rules for Accel applications.
AccelInt
Contains base class rules for Accel applications. This ruleset contains the interfaces that all accelerator
applications share.
OrderFulfillment
Core rules of order fulfillment major functionalities and fulfillment tasks.
OrderFulfillmentInt
Interface rules for the OrderFulfillment layer used in both Product Order and Service Order layers.
OrderRequest
Contains the rules related to REST services of OFA application.
OrderRequestData
Contains the data structure for OrderRequest.
Accel
Contains base class rules for Accel applications.
OrderFulfillmentTemplate
Rule for maintaining fulfillment templates.
OrderFulfillmentData
Data structure for the Order Fulfillment Template.
Case types
Reuse the following case types that are available in Order Fulfillment Applications(Product Order and
Service Order) Accelerator according to your specific business needs.
Product Order Top level case created for each Product order
Service Order
Top level case created for each Service order
Data models
Data models describe the objects modeled in an application and their relationship to each other. A data
model is a collection of entities and attributes.
• Order Request
• Case type (Work) data elements
• Order Fulfillment Template
• Fulfillment Association
Order Request
The Order Request data structure is a core data model for the application. Inbound Product / Service
Orders are decomposed into this data structure. This structure is used to create the fulfillment plan, and
various case types also maintain elements of the structure.
Product Order
The Product Order case maintains elements of the Product Order Request data structure as follows.
Page Data class
Product Accel-OF-Data-OrderRequest-ExOIProduct
Service Order
The Service Order case maintains elements of the Service Order Request data structure as follows.
Page Data class
Service Accel-OF-Data-OrderRequest-ExOIService
Accel-OF-Data-OrderRequest-
Service Specification
ExOIServiceSpecification
A Specification case has Versions, each version defines a time frame within which a list of services are
applicable.
Child Specs Name, DependentOn, Point of List of child Specification and its
No Return dependents.
Fulfillment Association
Fulfillment Association Defines the relation between a case type to a specification. When case is
decomposed, the specification case applicable for a fulfillment case hierarchy is determined from this
table. When decomposition, the current date is matched to get the version applicable, and the child
specifications are referred to create corresponding fulfillment cases.
Fulfillment Association
Fulfillment Association is the last step in the creation of a fulfillment plan and consists of a process of
identifying the cases that are required to complete a customer order. The sources for determining which
cases you need to create are the Fulfillment Association class instances.
Access groups
You can restrict access to functionality within your application by using an access group. The following
default access groups are available after you install Order Fulfillment Application Accelerator:
Authors
Landing Pages
There are a few landing pages that can be referred to various Functionality. The main landing pages in
this application are:
• Fulfillment Association – contains table to show the Fulfillment Association table.
• Specifications – contains the Specification cases that are created for the purpose of Fulfillment
template.
TMForum APIs
Product Ordering Management API (TMF 622).
Pega Order Fulfillment Accelerator (OFA) is certified on TMForum Product Ordering Management API (TMF
622). These APIs are designed with REST webservices protocol. Pega Order Fulfillment Accelerator
provides GET, POST, PATCH and DELETE API operations for Product Order resource.
The following are the benefits of TMForum APIs:
• Standard interface to integrate with OFA
• Reduces time to implement
For more details about TM Forum, see TMForum Home and API Page TMForum APIs.
The dedicated Service Package for TMForum APIs is productOrderingManagement. The input request and
output response format for each API is as per standard resource defined for TMForum Specification guide
v4.0.0. The error codes were also defined as per TMF Specification guide.
Please find the specification document reference here.
fields*
PATCH/{id} It updates
existing entity in
the system with
details passed in
the input request.
The id of the
entity which is
being updated
needs to be
passed in the
path parameter
of the URL. The
data that needs
to be updated will
be passed in the
input request.
DELETE/{id} It moves existing The entity id
order in the needs to be
system to
passed in the
Resolved-
Cancelled state. path parameter
of the URL
while
performing this
operation
Note: In PATCH operation the updated JSON should contain all the line items as present in the
original creation request, even if there are no modifications done to those line items. To add a new
line item in PATCH request, add new line items in addition to line items in original request. If this is
not done, there could be a mismatch between the clipboard structure of the amended order and
the case hierarchy. This is because the entire request data is copied to the CO clipboard structure
during amendment, but case hierarchy is altered only if there is a new line item to be added.
PATCH/DELETE operation cannot be performed once the order reached PONR
state/ResolvedCompleted/Resolved-Cancelled state.
API parametres
Parameter Description
PATCH/{id} It updates
existing entity in
the system with
details passed in
the input request.
The id of the
entity which is
being updated
needs to be
passed in the
path parameter
of the URL. The
data that needs
to be updated will
be passed in the
input request.
DELETE/{id} It moves existing The entity id
order in the needs to be
system to
passed in the
Resolved-
Cancelled state. path parameter
of the URL
while
performing this
operation
Note: In PATCH operation the updated JSON should contain all the line items as present in the
original creation request, even if there are no modifications done to those line items. To add a new
line item in PATCH request, add new line items in addition to line items in original request. If this is
not done, there could be a mismatch between the clipboard structure of the amended order and
the case hierarchy. This is because the entire request data is copied to the CO clipboard structure
during amendment, but case hierarchy is altered only if there is a new line item to be added.
PATCH/DELETE operation cannot be performed once the order reached PONR
state/ResolvedCompleted/Resolved-Cancelled state.
API parametres
Parameter Description
Note that when a Service order case is created using REST service and JSON input, the Service Order case
has a page property called SORequestInt which contains the entire input JSON as is. Certain critical
properties needed for case processing are copied over to .ExOrder page property in the Service Order
case using the data transforms Accel-OF-API-CustomerOrder.CopyToSOReq_Rest. Extend this data transform
to complete the mapping of all properties. The following figure shows the clipboard structure for Service
Order case created using the REST service. Notice the presence of ExOrderand SORequestInt pages.
Ideally it is recommended only to have the ExOrder page with the mapping performed from the incoming
structure and not have a page property with an Int class structure in the work page.
• Implementation approach
• Creating a new operator ID
• Creating a new application
• Updating dynamic class referencing
• Updating the access group of the service package
• Updating the fulfillment association data records
• Creating new fulfillment tasks
• Configuring a default email account
Implementation approach
Learn about the required team members and effective planning strategy in a general Pega
implementation to ensure a successful implementation of your application.
• Team responsibilities
• Roles and responsibilities
Team responsibilities
Organize your implementation team to provide the knowledge and experience that application
development requires.
Ensure that the following roles are present in your team to develop the application and to use
the reference application as a guide: •Lead System Architect
• Four Senior System Architects
• Quality Assurance Tester
The team members must have at least three years of experience in their current roles. A business analyst
and product owner can address any Phase 2 work. The reference application provides the definition for
the process for your first release. Therefore, you do not need a business analyst or a product owner for
your first release. The business analyst and the product owner can address any work in the subsequent
release.
You can build your team with employees from your institution, partners, or Pega Consulting. f you want to
have Pega Consulting on your team, contact your Pega account team.
Client responsibilities
• Review the collateral that is provided with the reference application, including documents and
videos, to help you understand the application.
• Develop your own solution.
• Test for quality assurance.
Pega
• Provide the Order Fulfillment Application Accelerator application ruleset and supporting collateral.
• Provide guidance as needed through your account team.
• Provide technical support through the Pega Support organization for any issues with Pega Platform.
1. Log in to Dev Studio with an administrator account, for example administrator@[Link], and the
password for that operator.
2. Save a copy of the administrative operator record and give that entry a name that identifies the new
record as an application setup operator, for example, OrderFulfillmentAppSetup.
3. Add the OrderFulfillment:AppSetup access group to the new operator record, and then click the radio
button to the left of the access group to select that group as the default access group.
4. Optional: To update the password, ....
5. Save the new application setup operator.
Warning:
The data that you enter on this screen and in the advanced settings is important. Perform this
task with your Lead System Architect to ensure that you have the right starting class structure.
The New Application wizard validates the length of class names in the expanded Case class
structure section and generates error messages if the names are too long (56 char). There are
a few class names, such as Accel-OF-Work-FulfillmentType-AssignSwitchIPAndGateway that are 54
characters in length and may generate a warning when the New Application wizard generates
new class names for the application. Shorten the last segment of the new class name to meet
the required length of 56 characters. Review the Case class structure to view any exceptions.
8. Save the changes, and then click Create Application.
This action takes a while to complete. The New Application wizard updates the access group of the
current operator to include an administration access group of the new application. You can now create
a new administrator operator for the new application.
9. Open the new application by clicking Go to app.
1. Copy the necessary stage rules to the new case type. The following stage rules
are required:
• Initialization
• Wait For Child Case Dependencies
• Resolution
• Wait for Dependency – Alternate Stage
The following figure shows a sample case type rule for Activate Switch. The business logic for the new
case type must go into the Configure Switch stage. You must copy the remaining stages over without
any changes for the order line item dependency and catalog dependency to work. You can extend the
Initialization stage to copy over any case-specific data from the order XML.
Accel-OF-Data-OrderRequest
Accel-OF-Data-SpecificationType of_data_specificationtype
Accel-OF-Data-
SpecificationDetail
Accel-OF-Data- CatalogDependencyListPage list Page list Accel-OF-Data-
SpecificationDetail
Dependency
Known issue