TIBCO® Fulfillment Order Management WebServices GuideSoftware Release 4.0July 2017
Two-Second Advantage®
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCHEMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (ORPROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THEEMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANYOTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS ANDCONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTEDSOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THECLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOADOR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE)OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USERLICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THESOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, ANDYOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BEBOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyright lawsand treaties. No part of this document may be reproduced in any form without the writtenauthorization of TIBCO Software Inc.
TIBCO, Two-Second Advantage, TIBCO ActiveMatrix BusinessWorks, TIBCO Runtime Agent, TIBCOAdministrator, and TIBCO Enterprise Message Service are either registered trademarks or trademarksof TIBCO Software Inc. in the United States and/or other countries.
Enterprise Java Beans (EJB), Java Platform Enterprise Edition (Java EE), Java 2 Platform EnterpriseEdition (J2EE), and all Java-based trademarks and logos are trademarks or registered trademarks ofOracle Corporation in the U.S. and other countries.
All other product and company names and marks mentioned in this document are the property of theirrespective owners and are mentioned for identification purposes only.
THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOTALL OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASEDAT THE SAME TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWAREVERSION ON A SPECIFIC OPERATING SYSTEM PLATFORM.
THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OFMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICALERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESECHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCOSOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S)AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.
THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY ORINDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE,INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.
Copyright © 2010-2017 TIBCO Software Inc. All rights reserved.
TIBCO Software Inc. Confidential Information
2
TIBCO® Fulfillment Order Management Web Services Guide
Contents
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
TIBCO Documentation and Support Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Services and Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Integration Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
SOAP Over HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
SOAP Over JMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
TIBCO Fulfillment Orchestration Suite Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
TIBCO Fulfillment Orchestration Suite Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Fulfillment Management Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Security Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Order Management Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Order Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
Cancel Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
Get Order Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Get Orders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Get Order Execution Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Submit Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
Synchronous Submit Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Amend Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
Perform Bulk Order Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Withdraw Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Activate Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
Suspend Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Fetch Authentication Token . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Get Enriched Execution Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Enriched Execution Plan Request Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
Enriched Execution Plan Response Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
AOPD Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Generate Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
Generate Partial Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
Product Model Purge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Price and Discount Model Purge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Offline Catalog Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Offer and Price Engine Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Get Offer Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3
TIBCO® Fulfillment Order Management Web Services Guide
Validate Offer Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Get Price Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Get Product Information Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
Get Price Information Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Order Capture System Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
CRM Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Subscriber Inventory Pagination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Subscriber Inventory Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Common Data Format Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
ResultStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
ResultFault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Notification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Order Notification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
Plan Notification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Role . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
OrderHeader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
OrderLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Product . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Characteristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Execution Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
PlanFragment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Pagination Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
SubscriberListType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
AddressType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Response Codes and Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Orchestrator Pre-processors and Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
4
TIBCO® Fulfillment Order Management Web Services Guide
Figures
SOAP over HTTP Integration Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
SOAP over JMS Synchronous Integration Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
SOAP over JMS Asynchronous Integration Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Provisioning in the Orchestration Suite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Synchronous Submit Order Request Data Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Synchronous Submit Order Response Data Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
PaginationType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
SubscriberListType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
AddressType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5
TIBCO® Fulfillment Order Management Web Services Guide
TIBCO Documentation and Support Services
Documentation for this and other TIBCO products is available on the TIBCO Documentation site. Thissite is updated more frequently than any documentation that might be included with the product. Toensure that you are accessing the latest available help topics, visit:
https://docs.tibco.com
Product-Specific Documentation
The following documents for this product can be found on the TIBCO Documentation site:
● TIBCO Fulfillment Order Management Installation and Configuration Guide
● TIBCO Fulfillment Order Management User's Guide
● TIBCO Fulfillment Order Management Administration Guide
● TIBCO Fulfillment Orchestration Suite Getting Started Guide
● TIBCO Fulfillment Orchestration Suite Best Practices Guide
● TIBCO Fulfillment Order Management Concepts and Architecture Guide
● TIBCO Fulfillment Order Management Web Services Guide
● TIBCO Fulfillment Order Management Release Notes
How to Contact TIBCO Support
For comments or problems with this manual or the software it addresses, contact TIBCO Support:
● For an overview of TIBCO Support, and information about getting started with TIBCO Support,visit this site:
http://www.tibco.com/services/support
● If you already have a valid maintenance or support contract, visit this site:
https://support.tibco.com
Entry to this site requires a user name and password. If you do not have a user name, you canrequest one.
How to Join TIBCO Community
TIBCO Community is an online destination for TIBCO customers, partners, and resident experts. It is aplace to share and access the collective experience of the TIBCO community. TIBCO Community offersforums, blogs, and access to a variety of resources. To register, go to the following web address:
https://community.tibco.com
6
TIBCO® Fulfillment Order Management Web Services Guide
Architecture
TIBCO® Fulfillment Order Management is a meta data driven order management and fulfillmentsystem which allows development of fulfillment plans based on meta-data specified in productcatalogs. Order fulfillment and service provisioning is no longer a simple single-service or productworkflow. The dynamic bundled offerings along with the explosion of devices, applications, real timeinventory management, and third-party content providers require a complex order fulfillment systemwhich can adapt to the changes in processes, meta data, and inventory. Traditional OSS/BSS 1 approachwith the data silos fail to provide a dynamic and agile solution. An end-to-end order managementsystem based on product and service catalogs is a key differentiator of TIBCO® Fulfillment OrderManagement.
TIBCO Fulfillment Order Management is a comprehensive software solution which designs, deploys,and maintains high-performance scalable enterprise-level business processes for advanced anddynamic order fulfillment. TIBCO Fulfillment Order Management enables companies to quicklyintroduce new product offerings and in most cases requires little or no change to fulfillment processes.The product bundles are decomposed into existing products to automatically generate a plan specific tothe order.
TIBCO Fulfillment Order Management also enables companies to efficiently manage changes to theexisting business process to meet a rapidly changing business environment.
The product model can be defined following SID 9 guidelines using TIBCO® Fulfillment Catalog or anyother catalog management system and imported into TIBCO Fulfillment Order Management.
Services and OperationsThe interfaces are organized into services that include related operations. The following interfaces areexposed for any client to invoke the services related to the framework. These services can be invokedover two different channels: SOAP over HTTP and SOAP over JMS.
Supported encoding style in the web service request is UTF-8.
All Web Services support HTTP and JMS. Web Services endpoint URL has the following format:
http://<Hostname>:<Port>/api/<serviceName>ServiceHTTP.
For example, http://localhost:9091/api/aopdService.
The naming convention for SOAP action is /api/<serviceName>.
The naming convention for JMS destination istibco.aff.<shortnameformodule>.services.<servicenamelowercase>.
For example, tibco.aff.oms.ordersService.
If AOPD is running in colocated mode, the host name is omsServer. If AOPD is running in standalonemode, the host name is aopd.
The operations specified in the table follow the naming conventions.
Services and Operations Summary
Module Service JMS Destination Operation
Order Management(OM)
Order tibco.aff.oms.ordersService
CancelOrder
1 Operational/Operations Support System (OSS) Software applications support back-office activities operating a company network,provision and maintain customer services. OSS is traditionally used by network planners, service designers, operations, architects,support, and engineering teams in the service provider.
7
TIBCO® Fulfillment Order Management Web Services Guide
Module Service JMS Destination Operation
GetOrderDetails
GetOrders
GetOrderExecutionPlan
GetEnrichedExecutionPlan
SubmitOrder
AmendOrder
SyncSubmitOrder
WithdrawOrder
FetchAuthenticationToken
PerformBulkOrderAction
ActivateOrder
SuspendOrder
Purge N/A purgeOrders
getPurgeStatus
getPurgeEstimate
Offline Catalog N/A RequestOfflineCatalog
Purge
Automatic Order PlanDevelopment (AOPD)
AOPD tibco.aff.aopd.aopdService
generatePartialPlan
generatePlan
For all the web services to work correctly, the data models should be available to Orchestrator andAutomatic Order Plan Development (AOPD) components.
Integration ChannelsTo provide maximum flexibility for exposing services to the enterprise, service implementation isseparated from the interface. This allows services to be invoked from different transport mechanisms.The following transports are supported:
● SOAP over HTTP
8
TIBCO® Fulfillment Order Management Web Services Guide
● SOAP over JMS
SOAP Over HTTPSOAP over HTTP service calls use the standard synchronous web services message format. Theintegration pattern is as follows:
SOAP over HTTP Integration Pattern
In the SOAP over HTTP pattern, a service client makes a synchronous service call to the OrderManagement Services component. The service calls the appropriate operation and performs therequired operation before sending a reply back to the calling application.
Since TIBCO Fulfillment Order Management is deployed as part of the OMS Server, the endpoint URLsfor SOAP over HTTP have changed. The new endpoint URLs for respective components are as follows:
● AOPDService in standalone and collocated mode http://<host>:<port>/api/aopdService
● Offer and Price Engine in standalone and collocated mode: http://<host>:<port>/api/opeService
● Offline Catalog Request: http://<host>:<port>/api/offlineCatalogueWS● Order Capture System: http://<host>:<port>/ocs-app
The Offline Catalog request service can be used to send the request to the TIBCO Fulfillment OrderMangement interface to load the offline models.
SOAP Over JMSSOAP works over a variety of transports and is not restricted to HTTP web services. JMS provides ahighly available transport mechanism that delivers messages over and above what HTTP provides.SOAP over JMS service calls use the TIBCO proposed specification extension for sending SOAPmessages over JMS. TIBCO ActiveMatrix BusinessWorks supports calling SOAP over JMSsynchronously using the standard SOAP Request/Reply activity. The non-TIBCO ActiveMatrixBusinessWorks application should be able to call SOAP over JMS services both synchronously andasynchronously using standard JMS messaging techniques that implement the required elements of thespecification extension.
The synchronous integration pattern is as follows:
9
TIBCO® Fulfillment Order Management Web Services Guide
SOAP over JMS Synchronous Integration Pattern
The asynchronous integration pattern is as follows:
SOAP over JMS Asynchronous Integration Pattern
In the SOAP over JMS pattern, a service client makes a synchronous or asynchronous service call to theOrder Management Services component. The service calls the appropriate operation and performs therequired operation before sending a reply back to the calling application.
The JMS destinations where the SOAP message should be sent is specified in the respective webservices WSDL document.
10
TIBCO® Fulfillment Order Management Web Services Guide
TIBCO Fulfillment Orchestration Suite Overview
New technologies and network architectures enable communications service providers (CSP) to createinnovative converged products and services offerings which are introduced faster and have shorter lifecycles than previous service offerings to address a very changing and competitive market.
In view of the rapid pace of change in the technology, the industry is evolving to become a contributorand not remain a mere consumer of technology. In this environment, communications service providersface the challenge of defining, managing, and delivering numerous complex products and variations tothe market in a most effective way to differentiate themselves. TIBCO has concentrated and structuredits services around the following points:
● New product offerings are designed and rolled out in a few weeks including implementation in allof the fulfillment chain.
● Customer orders are instantly fulfilled and provisioned in the network to maximize customerexperience.
● Customer orders come from a large variety of order entries such as customer self-care portals,customer sales representative desks, or even network elements detecting service access to leveragefulfillment chain investment and support hardware rationalization.
TIBCO provides CSPs with a comprehensive and integrated solution ready for complete end-to-endfulfillment automation. The TIBCO® Fulfillment Orchestration Suite defines new product and serviceofferings, associated fulfillment rules and processes, and automates the delivery from order capturedown to the service activation in the network.
TIBCO Fulfillment Orchestration Suite ComponentsThe TIBCO Fulfillment Orchestration Suite solution is capable of supporting end-to-end orderfulfillment with order management, provisioning, and catalog capabilities.
The following are the constituents of the TIBCO Fulfillment Orchestration Suite:
● TIBCO® Fulfillment Catalog: TIBCO Fulfillment Catalog is a catalog function that defines andmanages life cycles of commercial and technical offerings.
● TIBCO® Fulfillment Order Management: TIBCO Fulfillment Order Management is a meta datadriven order management and fulfillment system which allows development of fulfillment plansbased on meta-data specified in product catalogs. Order fulfillment and service provisioning is nolonger a simple single-service or product workflow. The dynamic bundled offerings along with theexplosion of devices, applications, real-time inventory management, and third-party contentproviders require a complex order fulfillment system which can adapt to the changes in processes,meta data, and inventory. Traditional OSS/BSS approach with the data silos fail to provide adynamic and agile solution.
● TIBCO® Fulfillment Provisioning: TIBCO Fulfillment Provisioning is a provisioning componentthat automates the activation of the underlying network services and allocation of all the networkresources. This provisioning element implements service order management and resource ordermanagement TAM applications, aligns to service and resource activator OSS/J order managementcomponents, uses eTOM service configuration and activation, and implements resourceprovisioning processes and functions.
● TIBCO® Fulfillment Subscriber Inventory: TIBCO Fulfillment Subscriber Inventory maintains acurrent image of customer products at any given point in time that is capable of supporting fastconcurrent read or write access while ensuring data consistency. TIBCO Fulfillment SubscriberInventory also provides a rich, user-friendly web interface that can be used to explore and modifythe contents of the system in a safe and secure manner.
11
TIBCO® Fulfillment Order Management Web Services Guide
Provisioning in the Orchestration Suite
To enable TIBCO® Fulfillment Orchestration Suite to provide a truly unified and cohesive solution suite,different components of the suite have been integrated. For instance, the suite provides pre-definedinter-connectivity between TIBCO Fulfillment Provisioning, TIBCO Fulfillment Subscriber Inventory,TIBCO Fulfillment Order Management, and TIBCO Fulfillment Catalog, a catalog concept alignmentbetween TIBCO Fulfillment Catalog and TIBCO Fulfillment Provisioning through data synchronizationprocess, and a GUI integration for a similar look-and-feel. .
12
TIBCO® Fulfillment Order Management Web Services Guide
Fulfillment Management Services
The fulfillment management services are the set of services which are related to entities associated withorder. These services allow you to get information about these entities and perform other operations.
Security HeaderTIBCO® Fulfillment Order Management supports both HTTP and JMS as transport protocols forinvoking SOAP based Web services.
● TIBCO Fulfillment Order Management supports various web services, and each web service requestrequires the WS-Security UserName Token mechanism. It uses TIBCO Administrator credentials ina standards-compliant manner.
● By default, OMS provides a set of user IDs and passwords for the operations on OMS through webservice requests. Order services in OMS can be secured by enabling user name token-based security.OMS supports the WS-Security UserName Token mechanism which allows for the sending andreceiving of user credentials in a standards-compliant manner. For more details, refer to TIBCOFulfillment Order Management Administration Guide.
Order Management ServicesThe location of all OMS web service WSDLs is $AF_HOME/schemas/wsdl.
Order ServiceThis service contains operations regarding submitting and retrieving orders.
Cancel Order
This operation cancels the specified order in the orchestration engine. The order must be previouslysubmitted successfully and exist in the orchestration engine database. This function extracts the originalorder and resubmits it as an amendment with all order line actions set to CANCEL.
The request message format is:
Cancel Order Request Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
13
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
orderID String
(Mandatory, Choice)
The ID of the Order generatedby OMS. This must be an exactmatch.
orderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
rollback Boolean
(Optional)
Flag to indicate if the order isto be rolled back.
The reply message format is:
Cancel Order Response Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
BusinessTransactionID String Transaction ID generated byOMS, and used internally byOMS and Orchestrator.
orderID String
(Mandatory, Choice)
The ID of the Order generatedby OMS. This must be an exactmatch.
orderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
message String Interactive message sent toclient confirming requestprocessing.
Get Order Details
This operation retrieves the order details for a given order ID or order reference and returns to thecalling application.
The request message format is:
14
TIBCO® Fulfillment Order Management Web Services Guide
GetOrderDetailsRequest Data Model
Element Name Element Type Description
OrderID String
(Mandatory, Choice)
The ID of the order generatedby OMS. This must be an exactmatch.
OrderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
ExternalBusinessTransactionID String Transaction ID sent by client.
includeOrderRequest boolean This flag determines whetheror not to include the originalrequest in the response.
includeAmendments boolean This flag determines whetheror not to include all theamendments for the order inthe response.
The reply message format is:
GetOrderDetailsResponse Data Model
Element Name Element Type Description Example
orderType orderType
(Optional)
Order data structure.Data model for theorder is defined inXSD (refer section Common Data FormatSpecifications on page69). If the order is notfound this element isomitted.
Get Orders
This operation retrieves the orders for the specified subscriber or customer and returns to the callingapplication.
The request message format is:
15
TIBCO® Fulfillment Order Management Web Services Guide
The request criteria is used to filter the resulting list of orders returned. Criteria are additive using theAND operator. The request criteria is not required, but it is recommended to pass in a request afterapplying the filtering criteria. Otherwise, a very large result set may be generated and returned. Theresults are limited to a maximum of 1000 orders.
By default, the returned orders are sorted by submission date in descending order.
The user can also customize the sorting by passing information in the SortCriteria element. TheSortCriteria element can be passed single field or combination of fields, the order for sorting (ascendingor descending) and sequence. The sequence defines in what order should the sorting field be applied.By using these combination the user can get the sorted result in desired way.
Get Orders Request Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
sortCriteria sortCriteria
Optional
Complex type whichencapsulates the sortFieldsequence.
sortField Sequence
Optional
Sequence of complex typewhich encompasses sortField/udfField and their sequencenumber and sorting order.
sortCriteria/sortField/sortBy Attribute, String This element is used to definewhat order the records shouldbe sorted. This element takesvalues ASC (Ascending) orDESC(Descending).
sortCriteria/sortField/sortSequence
Attribute, String This attribute defines sequenceof the given field for which thesorting is applied to. It takesnumerical number.
16
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
orderUDFField String
Optional
Defined the order header UDFfield name by which the resultis sorted. More than one udffield can be given but cannot berepeated.
field sortFieldValues
Optional
List of fields which can be usedto sort the result.
orderID String
(Optional)
The ID for the order to retrieveorders. This field supportswildcard searches using * or %at the start or end of the string.This is a case-insensitive searchparameter.
orderRef String
(Optional)
The order reference to retrieveorders. This field supportswildcard searches using * or %at the start or end of the string.This is a case-insensitive searchparameter.
customerID String
(Optional)
The ID for the customer toretrieve orders. This fieldsupports wildcard searchesusing * or % at the start or endof the string. This is a case-insensitive search parameter.
subscriberID String
(Optional)
The ID of the subscriber toretrieve orders. This fieldsupports wildcard searchesusing * or % at the start or endof the string.
Specifying subscriberID returnsall orders that include thesubscriber, including multiple-subscriber orders.
dateRange/startDate Date (YYYY-MM-DD) The earliest order date toreturn orders. This date isinclusive. This is based on theOrderSubmission Date on theorder. Order submission datesbefore this date are excluded.
17
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
dateRange/endDate Date (YYYY-MM-DD) The latest date to return orders.This date is inclusive. This isbased on the Order SubmissionDate on the order. Ordersubmission dates after this dateare excluded.
status String Order status.
headerUDF/name String Name of UDF.
headerUDF/value String Value of UDF.
orderLineUDF/name String Name of UDF.
orderLineUDF/value String Value of UDF.
pagination/startRecord long Inclusive start record index.
pagination/endRecord long Inclusive end record index.
orderSummary boolean Flag to indicate if the operationshould only return orderheader information.
The reply message format is:
Get Orders Response Data Model
Element Name Element Type Description
Orders Type
(Optional)
List of Orders. If no orders arefound this element is omitted.
pagination/startRecord long
(Mandatory)
Start record index of returnedorders. This index is inclusive.
pagination/endRecord long
(Mandatory)
End record index of returnedorders. This index is inclusive.
ExternalBusinessTransactionID String Transaction ID sent by client.
18
TIBCO® Fulfillment Order Management Web Services Guide
Get Order Execution Plan
This operation retrieves the order execution plans for a given order and returns to the callingapplication.
The request message format is:
Get Order Execution Plan Request Data Model
Element Name Element Type Description
ExternalBusinessTransactionID
String Transaction ID sent by client.
orderID String
(Mandatory, Choice)
The ID of the Order. This must be an exactmatch.
orderRef String
(Mandatory, Choice)
The order reference ID. This must be an exactmatch.
The reply message format is:
Get Order Execution Plan Reply Data Model
Element Name Element Type Description
ExternalBusinessTransactionID
String Transaction ID sent by client.
19
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
Plan Type
(Optional)
Execution Plan data structure. Data model forExecution Plan is defined in XSD (refer section Common Data Format Specifications on page 69).If no Execution Plan was found this element isomitted.
Submit Order
This operation accepts an order for submission to the order management system and returns the orderID and order reference to the calling application.
● If the order is being submitted for the first time, do not specify the Order ID in the input. A value isgenerated internally.
● If the order is an amendment to a previously submitted order, orderRef must be specified.
● If orderRef is not specified, a value is generated and returned to the calling application. This value isalways generated whether the order passed validation or not.
● For SOAP over JMS Web services, the length of orderRef should be less than or equal to 100characters.
● If the router configuration is selected as filteringRouter, then submitOrder must have a UDFwith UDF Name as "Orchestrator" in the order header. This information is required to evaluate theOrchestrator engine type in the filteringRouter. For example: <ns0:header xmlns:ns0="http://www.tibco.com/aff/order"> <ns0:customerID>CUSTOMERID</ns0:customerID> <ord1:udf> <ord1:name>Orchestrator</ord1:name> <ord1:value>IPC</ord1:value> </ord1:udf> </ns0:header>
Optionally, the orders submitted into the system can be validated before being sent for furtherprocessing. This validation can be enabled by setting the flagcom.tibco.af.oms.enableOfferValidation to true.
The request message format is:
Submit Order Request Data Model
Element Name Element Type Description
orderRequest orderRequestType
(Mandatory)
Order data structure. Datamodel for Order is defined inXSD (refer section CommonData Format Specifications onpage 69).
20
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
The reply message format is:
Submit Order Response Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
BusinessTransactionID String Transaction ID generated byOMS, and used internally byOMS and Orchestrator.
orderID String
(Optional)
Order ID generated by theorder manager (OMS). If theorder fails validation, this isomitted.
orderRef String
(Optional)
Client order reference.
If the submitOrder request does not contain either orderID or orderRef element, then OMS generatesthe orderRef and returns the same in the submitOrder response.
Synchronous Submit Order
This operation accepts an order for submission to the order management system and returns the orderID, order reference, and the plan to the calling application after the order has been completed throughthe Orchestrator engine.
● If the order is being submitted for the first time, do not specify the Order ID in the input. A value isgenerated internally.
● If orderRef is not specified, a value is generated and returned to the calling application. This value isalways generated whether the order passed validation or not.
21
TIBCO® Fulfillment Order Management Web Services Guide
● For SOAP over JMS Web services, the length of orderRef should be less than or equal to 100characters.
● If the Router Configuration is selected as filteringRouter, then submitOrder must have a UDFwith UDF Name as "Orchestrator" in the order header. This information is required to evaluate theOrchestrator engine type in the filteringRouter. For example: <ns0:header xmlns:ns0="http://www.tibco.com/aff/order"> <ns0:customerID>CUSTOMERID</ns0:customerID> <ord1:udf> <ord1:name>Orchestrator</ord1:name> <ord1:value>IPC</ord1:value> </ord1:udf> </ns0:header>
An optional validate on submit function is available. If this function is enabled, prior to handing theorder to the Order Management component, this service performs a validation on the order todetermine if it is valid. The results of this validation are returned. If the order fails validation, it is notsubmitted to Order Management.
If the function is enabled by a flag, a copy of the order is saved in the offer cache to indicate it has beensubmitted.
The request message format is:
Synchronous Submit Order Request Data Model
Synchronous Submit Order Request Data Model
Element Name Element Type Description
orderRequest orderRequestType
(Mandatory)
Order data structure. Datamodel for Order is defined inXSD (refer section CommonData Format Specifications onpage 69).
ExternalBusinessTransactionID String Transaction ID sent by client.
The reply message format is:
22
TIBCO® Fulfillment Order Management Web Services Guide
Synchronous Submit Order Response Data Model
Synchronous Submit Order Response Data Model Table
Element NameElementType Description
resultStatus ResultStatus The result status of the operation.
OrderId String OrderID generated by OMS.
OrderRef String Client order reference.
planID String Plan ID of the plan generated for the order.
status String Status of the order. For example, completed, or failure.
ExternalBusinessTransactionID
String Transaction ID sent by client.
BusinessTransactionID String Transaction ID generated by OMS, and used internallyby OMS and Orchestrator.
If the synchronous submitOrder request does not contain either orderID or orderRef element, thenOMS generates the orderRef and returns the same in the submitOrder response.
Amend Order
An existing order can be modified using the amend order web service. If the order reference alreadyexists in OMS, then it accepts the amend order request.
The request message format is:
23
TIBCO® Fulfillment Order Management Web Services Guide
The following table explains elements defined in request schema.
Amend Order Request Data Model
Element Name Element Type Description
orderRequest orderRequestType
(Mandatory)
Order data structure. Datamodel for Order is defined inXSD (refer section CommonData Format Specifications onpage 69).
ExternalBusinessTransactionID String Transaction ID sent by client.
The response message format is:
The following table explains the elements defined in the response schema.
Amend Order Response Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
BusinessTransactionID String Transaction ID generated byOMS and used internally byOMS and Orchestrator.
orderID String
(Optional)
Order ID generated by theorder manager (OMS). If theorder fails validation, this isomitted.
orderRef String
(Optional)
Client order reference.
24
TIBCO® Fulfillment Order Management Web Services Guide
Perform Bulk Order Action
This service can be used to perform the following operations on multiple orders (Order IDs, orderRef):
● CANCEL● SUSPEND● RESUME● WITHDRAWOnly one type of bulk action can be performed on multiple orders in a single request.
The request message format is:
Perform Bulk Order Action Request Data Model
Element Name Element Type Description
businessTransactionID String Transaction ID sent by client.
action String Name of the bulk actions toperform:
● CANCEL
● SUSPEND
● RESUME
● WITHDRAW
orderID String
(Optional)
List of order IDs on which bulkoperations are to be performed.
orderRef String
(Optional)
List of order references onwhich bulk operations are to beperformed.
A response in the form of an acknowledgment is returned asynchronously indicating the successfulsubmission of request. The status of the bulk process can be tracked through OMS UI, OMS server, andOrchestrator logs.
The response message format is:
25
TIBCO® Fulfillment Order Management Web Services Guide
Perform Bulk Order Action Response Data Model
Element Name Element Type Description
businessTransactionID String Transaction ID sent by client.
timestamp dateTime Date and time when OMSreceives a bulk order request.
message String
(Optional)request
Message indicating successfulrequest submission.
noOfOrders Integer
(Optional)
Number of orders in therequest.
Withdraw Order
This operation withdraws all the submitted orders. As an input, this operation accepts the OrderID orOrderRef to withdraw an order and returns the message while sending the order for withdrawal in theOrchestrator component. After receiving an order removal notification from Orchestrator, it removesthe requested order from the Order Management System component.
1. You cannot withdraw an order when it is in the COMPLETE or CANCELLED state.
2. The only way you can trace withdrawn orders from the Order Management System component isby OrderRef on the Activity Log page.
3. You can submit an order with the same OrderRef that is already withdrawn. Currently, since thesystem does not keep record of the withdrawn orders, the Orders Summary section under theDashboard tab does not show any statistics for withdrawn orders.
The request message format is:
Withdraw Order Request Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
orderID String
(Mandatory, Choice)
The ID of the order generatedby OMS. This must be an exactmatch.
26
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
orderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
The reply message format is:
Withdraw Order Response Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String Transaction ID sent by client.
BusinessTransactionID String Transaction ID generated byOMS, and used internally byOMS and Orchestrator.
orderID String
(Mandatory, Choice)
The ID of the order generatedby OMS. This must be an exactmatch.
orderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
message String Interactive message sent toclient confirming requestprocessing.
Activate Order
The Activate Order operation is used to activate or resume a suspended order. This operation takesorderId or orderRef and attempts to activate or resume the order for the given orderId or orderRef. Thisoperation is asynchronous. Only valid orders and orders which are in SUSPEND state can be activated.
Element name: os:ActivateOrderRequest
The request message format is:
27
TIBCO® Fulfillment Order Management Web Services Guide
Activate Order Request Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String
(Optional)
This is an attribute which canbe used by external systems tokeep track of requests. Notethat the value of this attribute isnot stored anywhere in TIBCOFulfillment OrderManagement, and it is justmeant for use by externalsystems.
orderID String
(Mandatory, Choice)
The ID of the order generatedby OMS. This must be an exactmatch.
orderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
Element name: os:ActivateOrderResponse
The reply message format is:
Activate Order Response Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String
(Optional)
This is an attribute which canbe used by external systems tokeep track of requests. Notethat the value of this attribute isnot stored anywhere in TIBCOFulfillment OrderManagement, and it is justmeant for use by externalsystems.
orderID String
(Mandatory, Choice)
Required
orderRef String
(Mandatory, Choice)
Required
28
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
message String
(Mandatory, Choice)
Interactive message sent toclient confirming requestprocessing. Required.
Suspend Order
The Suspend Order operation suspends an existing order. This operation takes orderRef or orderId andsends a message to Fulfillment Order Management to suspend an order. This operation isasynchronous.
Element name: os:SuspendOrderRequest
The request message format is:
Suspend Order Request Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String
(Optional)
This is an attribute which canbe used by external systems tokeep track of requests. Notethat the value of this attribute isnot stored anywhere in TIBCOFulfillment OrderManagement, and it is justmeant for use by externalsystems.
orderID String
(Mandatory, Choice)
The ID of the order generatedby OMS. This must be an exactmatch.
orderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
Element name: os:SuspendOrderResponse
The reply message format is:
29
TIBCO® Fulfillment Order Management Web Services Guide
Suspend Order Response Data Model
Element Name Element Type Description
ExternalBusinessTransactionID String
(Optional)
This is an attribute which canbe used by external systems tokeep track of requests. Notethat the value of this attribute isnot stored anywhere in TIBCOFulfillment OrderManagement, and it is justmeant for use by externalsystems.
orderID String
(Mandatory, Choice)
The ID of the order generatedby OMS. This must be an exactmatch.
orderRef String
(Mandatory, Choice)
The client order reference ID.This must be an exact match.
message String Interactive message sent toclient confirming requestprocessing.
Fetch Authentication Token
A token based authentication has been introduced for the OMS order soap web service using JSONWeb Token (JWT). The operation FetchAuthenticationToken has been added to fetch the token based onthe existing username and password. This token can be used to invoke other operations of the orderservice.
In order to use this form of authentication, the client can keep the password empty and send thefetched token as the username in the SOAP request.
The request message format is:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ord="http://www.tibco.com/aff/orderservice" xmlns:aut="http://www.tibco.com/aff/authentication"> <soapenv:Header/> <soapenv:Body> <ord:AuthenticateRequest> <aut:username>admin</aut:username> <aut:password>admin</aut:password> </ord:AuthenticateRequest> </soapenv:Body></soapenv:Envelope>
30
TIBCO® Fulfillment Order Management Web Services Guide
Fetch Authentication Token Request Data Model
Element Name Element Type Description
Username String Existing username.
Password String Existing password.
The response message format is:
soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <AuthenticateReply xmlns:ns8="http://www.tibco.com/aff/enrichedPlan" xmlns:ns7="http://www.tibco.com/aff/planfragments" xmlns:ns6="http://www.tibco.com/aff/plan" xmlns:ns5="http://www.tibco.com/aff/authentication" xmlns:ns4="http://www.tibco.com/aff/commontypes" xmlns:ns3="http://www.tibco.com/aff/order" xmlns:ns2="http://www.tibco.com/aff/orderservice/result" xmlns="http://www.tibco.com/aff/orderservice"> <ns5:token>eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c3IiOiJhZG1pbiIsImlzcyI6Ik9NUyIsInJscyI6W3siYXV0aG9yaXR5IjoiUk9MRV9BRE1JTiJ9XSwidG50IjoiVElCQ08iLCJleHAiOjE0OTk3MTM5NzYsImlhdCI6MTQ5OTcxMzc5Nn0.NmLbv2yT5at1lE_DUyWfvjYdxvgv7TJk1utdv-YX-Fo</ns5:token> </AuthenticateReply> </soap:Body></soap:Envelope>
Sample Security Header with JWT<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <wsse:UsernameToken wsu:Id="UsernameToken-F5E29770329D29B85614793195129081"> <wsse:Username>eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c3IiOiJhZG1pbiIsImlzcyI6Ik9NUyIsInJscyI6W3siYXV0aG9yaXR5IjoiUk9MRV9BRE1JTiJ9XSwidG50IjoiVDEiLCJleHAiOjE0OTQyMTcyNjAsImlhdCI6MTQ5NDIxMzY2MH0.sW6zyVrPOV4g8hE-dItzriShWiT9XCVcDk0PMopm89g</wsse:Username> <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText"></wsse:Password> </wsse:UsernameToken></wsse:Security>
Get Enriched Execution Plan
The getEnrichedExecutionPlan operation calls an existing APIgetEnrichedExecutionPlanByPlanId to generate an enriched plan for a given order ID or orderreference ID. The response includes details about the plan and the generated jeopardy header for theplan.
The user has two optional parameters in the input:
1. Include Plan Fragment (Default is true)
2. Include Jeopardy Header (Default is true)
By default, the jeopardy header is included as part of a completed response..
Jeopardy Header includes Plan Item information along with risk region and duration information.Jeopardy Header also contains information about the SLA level calculation and predictabilitycalculations done for the plan. Based on the SLA and predictability calculation, the risk region isupdated with appropriate flag.
31
TIBCO® Fulfillment Order Management Web Services Guide
The getEnrichedExecutionPlan operation returns the following error codes in case an exception isthrown:
● MISSING_ORDER_ID_AND_REF(TIBCO-AFF-OMS-100007)
● ORDER_NOT_FOUND(TIBCO-AFF-OMS-100020)
● ORDER_INPUT_INVALID((TIBCO-AFF-OMS-100001)
● UNEXPECTED_ERROR(TIBCO-AFF-OMS-100000)
Enriched Execution Plan Request Operation
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ord="http://www.tibco.com/aff/orderservice"> <soapenv:Header/> <soapenv:Body> <ord:GetEnrichedExecutionPlanRequest ExternalBusinessTransactionID="?"> <ord:orderRef>Test_1</ord:orderRef> <!--Optional:--> <ord:includePlanFragments>true</ord:includePlanFragments> <!--Optional:--> <ord:includejeopardyHeader>true</ord:includejeopardyHeader> </ord:GetEnrichedExecutionPlanRequest> </soapenv:Body></soapenv:Envelope>
Enriched Execution Plan Response Operation
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns2:GetEnrichedExecutionPlanResponse ExternalBusinessTransactionID="?" xmlns:ns8="http://www.tibco.com/aff/enrichedPlan" xmlns:ns7="http://www.tibco.com/aff/planfragments" xmlns:ns6="http://www.tibco.com/aff/plan" xmlns:ns5="http://www.tibco.com/aff/commontypes" xmlns:ns4="http://www.tibco.com/aff/order" xmlns:ns3="http://www.tibco.com/aff/orderservice/result" xmlns:ns2="http://www.tibco.com/aff/orderservice"> <ns2:plan> <ns6:planID>2a85486d-4f1d-4e28-aa8d-ab832efe9f84</ns6:planID> <ns6:orderID>06deb39b-0372-47ec-82c8-0d7dc2c01a61</ns6:orderID> <ns6:orderRef>AF-4173AF-4178_01</ns6:orderRef> <ns6:originator>AFO</ns6:originator> <ns6:planCreationDate>2014-05-10T13:45:13.913+05:30</ns6:planCreationDate> <ns6:status>COMPLETE</ns6:status>
32
TIBCO® Fulfillment Order Management Web Services Guide
<ns6:statusChanged>2014-05-10T14:06:44.528+05:30</ns6:statusChanged> <ns6:description>ProductDependsOn</ns6:description> <ns6:planStartDate>2014-05-10T13:45:14.057+05:30</ns6:planStartDate> <ns6:planStartMillis>1399709714057</ns6:planStartMillis> <ns6:isAmendment>false</ns6:isAmendment> <ns6:planItem> .... </ns6:planItem> <ns6:planItem> .... </ns6:planItem> <ns6:planItem> ... </ns6:planItem> <ns6:udf> <ns6:name>JM_MESSAGE:20140510-134901.412</ns6:name> <ns6:value>AFF_JM_PLAN_0200:Plan is predicted to exceed typical duration and is increasing</ns6:value> </ns6:udf> <ns6:udf> <ns6:name>JM_MESSAGE:20140510-135101.848</ns6:name> <ns6:value>AFF_JM_PLAN_0230:Plan is predicted to exceed maximum duration and is increasing</ns6:value> </ns6:udf> <ns6:udf> <ns6:name>JM_MESSAGE:20140510-140401.512</ns6:name> <ns6:value>AFF_JM_PLAN_0120:Plan has exceeded out of scope threshold</ns6:value> </ns6:udf> <ns6:udf> <ns6:flavor>output</ns6:flavor> <ns6:name>headerUDF</ns6:name> <ns6:value>headerUDF Value; set by defaultPC for planItem 02946078-1252-4db5-8036-4dfce7d64561 at time 2014-05-10T14:00:28.582+05:30</ns6:value> <ns6:originalValue>headerUDF Value; set by defaultPC for planItem 1fee1d6e-5c7c-46a4-a080-381c527b0b90 at time 2014-05-10T14:00:15.832+05:30</ns6:originalValue> </ns6:udf> <ns6:udf> <ns6:type>String</ns6:type> <ns6:name>JM_RISK_REGION</ns6:name> <ns6:value>OUT_OF_SCOPE</ns6:value> <ns6:originalValue>HAZARD</ns6:originalValue> </ns6:udf> <ns6:udf> <ns6:name>ServerTimeZone</ns6:name> <ns6:value>19800000</ns6:value> <ns6:originalValue>19800000</ns6:originalValue> </ns6:udf> </ns2:plan> <ns2:jeopardyHeader> <ns8:requestTimeStamp>1399711004558</ns8:requestTimeStamp> <ns8:riskRegion>OUT_OF_SCOPE</ns8:riskRegion> <ns8:typicalCriticalPath> <ns8:planItemSection> <ns8:planItemID>1fee1d6e-5c7c-46a4-a080-381c527b0b90</ns8:planItemID> <ns8:startMilestoneID>START</ns8:startMilestoneID> <ns8:endMilestoneID>END</ns8:endMilestoneID> </ns8:planItemSection> <ns8:planItemSection> <ns8:planItemID>1f1f2daa-9219-47ea-9ee0-47e9a73d7f84</ns8:planItemID> <ns8:startMilestoneID>START</ns8:startMilestoneID> <ns8:endMilestoneID>END</ns8:endMilestoneID> </ns8:planItemSection> <ns8:planItemSection> <ns8:planItemID>02946078-1252-4db5-8036-4dfce7d64561</ns8:planItemID> <ns8:startMilestoneID>START</ns8:startMilestoneID> <ns8:endMilestoneID>END</ns8:endMilestoneID>
33
TIBCO® Fulfillment Order Management Web Services Guide
</ns8:planItemSection> <ns8:typicalDuration>10009443</ns8:typicalDuration> <ns8:maximumDuration>10009443</ns8:maximumDuration> </ns8:typicalCriticalPath> <ns8:maximumCriticalPath> <ns8:planItemSection> <ns8:planItemID>1fee1d6e-5c7c-46a4-a080-381c527b0b90</ns8:planItemID> <ns8:startMilestoneID>START</ns8:startMilestoneID> <ns8:endMilestoneID>END</ns8:endMilestoneID> </ns8:planItemSection> <ns8:planItemSection> <ns8:planItemID>1f1f2daa-9219-47ea-9ee0-47e9a73d7f84</ns8:planItemID> <ns8:startMilestoneID>START</ns8:startMilestoneID> <ns8:endMilestoneID>END</ns8:endMilestoneID> </ns8:planItemSection> <ns8:planItemSection> <ns8:planItemID>02946078-1252-4db5-8036-4dfce7d64561</ns8:planItemID> <ns8:startMilestoneID>START</ns8:startMilestoneID> <ns8:endMilestoneID>END</ns8:endMilestoneID> </ns8:planItemSection> <ns8:typicalDuration>10009443</ns8:typicalDuration> <ns8:maximumDuration>10009443</ns8:maximumDuration> </ns8:maximumCriticalPath> <ns8:planStartDate>1399709714057</ns8:planStartDate> <ns8:typicalCompletion>1399710254057</ns8:typicalCompletion> <ns8:maximumCompletion>1399710614057</ns8:maximumCompletion> <ns8:riskThreshold>25</ns8:riskThreshold> <ns8:oosThreshold>25</ns8:oosThreshold> <ns8:predictedEnd>1399719723500</ns8:predictedEnd> <ns8:actualEnd>1399711004528</ns8:actualEnd> <ns8:planItem> .... </ns8:planItem> <ns8:planItem> .... </ns8:planItem> <ns8:planItem> .... </ns8:planItem> </ns2:jeopardyHeader> </ns2:GetEnrichedExecutionPlanResponse> </soap:Body></soap:Envelope>
AOPD ServiceThe following web services are provided in AOPD:
34
TIBCO® Fulfillment Order Management Web Services Guide
Generate Plan
The generate plan web service makes it possible to get a copy of a plan for a particular order prototype,and existing catalogue, without submitting the order in system. The following code sample is anexample for the web service request for generatePlan.
Generate Plan Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ord="http://www.tibco.com/aff/orderservice" xmlns:ord1="http://www.tibco.com/aff/order" xmlns:com="http://www.tibco.com/aff/commontypes"> <soapenv:Header/> <soapenv:Body> <ord:SubmitOrderRequest ExternalBusinessTransactionID="GG_AF1347_02"> <ord:orderRequest> <ord1:orderRef>GG_AF1347_02</ord1:orderRef> <ord1:header> <ord1:description>ProductDependsOn</ord1:description> <ord1:customerID>PDO_CUST</ord1:customerID> <ord1:subscriberID>TIBCO</ord1:subscriberID> <ord1:requiredByDate>2010-04-30T13:20:00-05:00</ord1:requiredByDate> </ord1:header> <ord1:line> <ord1:lineNumber>1</ord1:lineNumber> <ord1:subscriberID>TIBCO</ord1:subscriberID> <ord1:productID>B </ord1:productID> <ord1:productVersion>0.1</ord1:productVersion> <ord1:quantity>1</ord1:quantity> <ord1:uom>UOM</ord1:uom> <ord1:action>PROVIDE</ord1:action> <ord1:requiredByDate>2010-04-30T13:20:00-05:00</ord1:requiredByDate> </ord1:line> </ord:orderRequest> </ord:SubmitOrderRequest> </soapenv:Body></soapenv:Envelope>
Generate Plan Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns5:plan xmlns:ns9="http://www.tibco.com/aff/orderservice/result" xmlns:ns8="http://www.tibco.com/aff/aopd/service/soap" xmlns:ns7="http://www.tibco.com/aff/aopdservice/result" xmlns:ns6="http://www.tibco.com/aff/planfragments" xmlns:ns5="http://www.tibco.com/aff/plan" xmlns:ns4="http://www.tibco.com/aff/orderservice" xmlns:ns3="http://www.tibco.com/aff/commontypes" xmlns:ns2="http://www.tibco.com/aff/order"> <ns5:planID>967aba69-2bf5-422e-885c-3ae8903b4784</ns5:planID> <ns5:orderID>1ef8ccef-0ecd-4687-81ac-6091ff926d9a</ns5:orderID> <ns5:orderRef>GG_AF1347_02</ns5:orderRef> <ns5:originator>AOPD</ns5:originator> <ns5:planCreationDate>2013-09-17T11:46:01.228-07:00</ns5:planCreationDate> <ns5:status>START</ns5:status> <ns5:statusChanged>2013-09-17T11:46:01.228-07:00</ns5:statusChanged> <ns5:planItem> <ns5:planItemID>0c22aecf-5a11-4c00-9c43-80e507040000</ns5:planItemID> <ns5:description>B1 PROVIDE</ns5:description> <ns5:planFragmentUniqueID>EP_TEST</ns5:planFragmentUniqueID> <ns5:orderLine> <ns5:orderLineNumber>1</ns5:orderLineNumber> <ns5:eol>true</ns5:eol> </ns5:orderLine> <ns5:action>PROVIDE</ns5:action> <ns5:status>START</ns5:status> <ns5:statusChanged>2013-09-17T11:46:01.228-07:00</ns5:statusChanged> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>RECORD_TYPE</ns5:name> <ns5:value>PO</ns5:value>
35
TIBCO® Fulfillment Order Management Web Services Guide
</ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>COMPENSATE_PROVIDE</ns5:name> <ns5:value>DEFAULT</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>COMPENSATE_CEASE</ns5:name> <ns5:value>DEFAULT</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EOL</ns5:name> <ns5:value>Y</ns5:value> </ns5:udf> <ns5:udf> <ns5:evaluationPriority/> <ns5:type>Shared</ns5:type> <ns5:flavor>config</ns5:flavor> <ns5:name>CONTRACTID-MV</ns5:name> <ns5:value>CONTRACTID-MV value in B1 product model.</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EPRM_ACTION_CEASE</ns5:name> <ns5:value>COMPENSATE_RESTART</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>PRODUCTID</ns5:name> <ns5:value>B1</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EPMR_ACTION_WITHDRAW</ns5:name> <ns5:value>COMPENSATE</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>Action</ns5:name> <ns5:value>PROVIDE</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>M_EP_UDFS</ns5:name> <ns5:value>0c22aecf-5a11-4c00-9c43-80e507040000</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>TASKID</ns5:name> <ns5:value>0c22aecf-5a11-4c00-9c43-80e507040000</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EPMR_ACTION_PROVIDE</ns5:name> <ns5:value>COMPENSATE_RESTART</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>GLOBAL_PRODUCT_NAME</ns5:name> <ns5:value>B1</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>ORDERLINE</ns5:name> <ns5:value>1</ns5:value> </ns5:udf> </ns5:planItem> </ns5:plan> </soap:Body>
36
TIBCO® Fulfillment Order Management Web Services Guide
</soap:Envelope>
Generate Plan SOAP fault
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <soap:Fault> <faultcode>soap:Server</faultcode> <faultstring>INVALID_PRODUCT_IN_ORDER</faultstring> <detail> <ns7:resultFault xmlns:ns2="http://www.tibco.com/aff/commontypes" mlns:ns3="http://www.tibco.com/aff/orderservice"mlns:ns4="http://www.tibco.com/aff/plan" xmlns:ns5="http://www.tibco.com/aff/planfragments" xmlns:ns6="http://www.tibco.com/aff/order" xmlns:ns7="http://www.tibco.com/aff/aopdservice/result" xmlns:ns8="http://www.tibco.com/aff/aopd/service/soap" xmlns:ns9="http://www.tibco.com/aff/orderservice/result"> <ns7:customErrors> <ns7:customError> <ns7:orderLine>1</ns7:orderLine> <ns7:productId>BPO_PROD1</ns7:productId> <ns7:message>TIBCO-AFF-AOPD-100006 : INVALID_PRODUCT_IN_ORDER</ns7:message> <ns7:planGenerationPhase>VALIDATION</ns7:planGenerationPhase> <ns7:ruleId>BasicOrderValidationAction</ns7:ruleId> </ns7:customError> </ns7:customErrors> </ns7:resultFault> </detail> </soap:Fault> </soap:Body></soap:Envelope>
Generate Partial Plan
The SOAP web service only provides a preview for order decomposition. the valid plan generationphases are VALIDATION, DECOMPOSING, OPTIMIZING, and PUBLISHING. In all other cases thisweb service returns a preview of the complete generated plan.
Generate Partial Plan Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ord="http://www.tibco.com/aff/orderservice" xmlns:ord1="http://www.tibco.com/aff/order" xmlns:com="http://www.tibco.com/aff/commontypes"> <soapenv:Header/> <soapenv:Body> <ord:PartialPlanRequest ExternalBusinessTransactionID="1"> <ord:orderRequest> <ord1:orderRef>GG_SU_Local7</ord1:orderRef> <ord1:header> <ord1:description>GG_JM</ord1:description> <ord1:customerID>JM</ord1:customerID> <ord1:subscriberID>TIBCO</ord1:subscriberID> <ord1:requiredByDate>2012-03-12T13:20:00-05:00</ord1:requiredByDate> <ord1:invoiceAddress> <com:line1>test123</com:line1> <com:locality>test123</com:locality> <com:region>test123</com:region> <com:country>IN</com:country> <com:postCode>411057</com:postCode> <com:supplementaryLocation>test123</com:supplementaryLocation> </ord1:invoiceAddress> <ord1:deliveryAddress> <com:line1>test123</com:line1> <com:locality>test123</com:locality> <com:region>test123</com:region> <com:country>IN</com:country> <com:postCode>411057</com:postCode> <com:supplementaryLocation>test123</com:supplementaryLocation> </ord1:deliveryAddress>
37
TIBCO® Fulfillment Order Management Web Services Guide
<ord1:notes>TEST</ord1:notes> </ord1:header> <ord1:line> <ord1:lineNumber>1</ord1:lineNumber> <ord1:productID>B1</ord1:productID> <ord1:productVersion>1.0</ord1:productVersion> <ord1:quantity>1</ord1:quantity> <ord1:uom>UOM</ord1:uom> <ord1:action>PROVIDE</ord1:action> <ord1:actionMode>MOVE</ord1:actionMode> <ord1:inventoryID>1</ord1:inventoryID> </ord1:line> </ord:orderRequest> <ord:planGenerationPhase>DECOMPOSING</ord:planGenerationPhase> </ord:PartialPlanRequest> </soapenv:Body></soapenv:Envelope>
Generate Partial Plan Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns4:PartialPlanResponse xmlns:ns9="http://www.tibco.com/aff/orderservice/result" xmlns:ns8="http://www.tibco.com/aff/aopd/service/soap" xmlns:ns7="http://www.tibco.com/aff/aopdservice/result" xmlns:ns6="http://www.tibco.com/aff/planfragments" xmlns:ns5="http://www.tibco.com/aff/plan" xmlns:ns4="http://www.tibco.com/aff/orderservice" xmlns:ns3="http://www.tibco.com/aff/commontypes" xmlns:ns2="http://www.tibco.com/aff/order"> <ns4:plan> <ns5:planID>5cbb306d-2806-4830-845e-46eaf72927fd</ns5:planID> <ns5:orderID>dc8dc9b8-87be-40fa-8600-b621a420ed65</ns5:orderID> <ns5:orderRef>GG_SU_Local7</ns5:orderRef> <ns5:originator>AOPD</ns5:originator> <ns5:planCreationDate>2013-09-17T11:47:22.456-07:00</ns5:planCreationDate> <ns5:status>START</ns5:status> <ns5:statusChanged>2013-09-17T11:47:22.456-07:00</ns5:statusChanged> <ns5:planItem> <ns5:planItemID>c705350b-5ae1-462c-989e-2a224d10a7c1</ns5:planItemID> <ns5:description>B1 PROVIDE</ns5:description> <ns5:planFragmentUniqueID>EP_TEST</ns5:planFragmentUniqueID> <ns5:orderLine> <ns5:orderLineNumber>1</ns5:orderLineNumber> <ns5:eol>true</ns5:eol> </ns5:orderLine> <ns5:action>PROVIDE</ns5:action> <ns5:status>START</ns5:status> <ns5:statusChanged>2013-09-17T11:47:22.456-07:00</ns5:statusChanged> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>RECORD_TYPE</ns5:name> <ns5:value>PO</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>COMPENSATE_PROVIDE</ns5:name> <ns5:value>DEFAULT</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>COMPENSATE_CEASE</ns5:name> <ns5:value>DEFAULT</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EOL</ns5:name> <ns5:value>Y</ns5:value> </ns5:udf> <ns5:udf> <ns5:evaluationPriority/> <ns5:type>Shared</ns5:type>
38
TIBCO® Fulfillment Order Management Web Services Guide
<ns5:flavor>config</ns5:flavor> <ns5:name>CONTRACTID-MV</ns5:name> <ns5:value>CONTRACTID-MV value in B1 product model.</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EPRM_ACTION_CEASE</ns5:name> <ns5:value>COMPENSATE_RESTART</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>PRODUCTID</ns5:name> <ns5:value>B1</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EPMR_ACTION_WITHDRAW</ns5:name> <ns5:value>COMPENSATE</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>Action</ns5:name> <ns5:value>PROVIDE</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>M_EP_UDFS</ns5:name> <ns5:value>c705350b-5ae1-462c-989e-2a224d10a7c1</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>TASKID</ns5:name> <ns5:value>c705350b-5ae1-462c-989e-2a224d10a7c1</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>EPMR_ACTION_PROVIDE</ns5:name> <ns5:value>COMPENSATE_RESTART</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>GLOBAL_PRODUCT_NAME</ns5:name> <ns5:value>B1</ns5:value> </ns5:udf> <ns5:udf> <ns5:flavor>config</ns5:flavor> <ns5:name>ORDERLINE</ns5:name> <ns5:value>1</ns5:value> </ns5:udf> </ns5:planItem> </ns4:plan> </ns4:PartialPlanResponse> </soap:Body></soap:Envelope>
Product Model PurgeThe purge web service makes it possible to remove existing products from the model repository inAOPD and models persisted in OMS database. For more details see "Product Model Purge" in theFulfillment Order Management Administration Guide.
Price and Discount Model PurgeThe purge web service also makes it possible to remove all prices and discounts from the modelrepository in AOPD, OPE, and models persisted in OMS database. For more details see "Product ModelPurge" in the Fulfillment Order Management Administration Guide.
39
TIBCO® Fulfillment Order Management Web Services Guide
Offline Catalog LoadingThe offline catalog feature enables TIBCO Fulfillment Order Management to have no dependency onTIBCO Fulfillment Catalog to be online all the time for the data models. For more details see "OfflineCatalog" in the Fulfillment Order Management Administration Guide.
Offer and Price Engine ServicesThe Offering and Pricing Engine (OPE) provides support for generating and validating the productoffering for the customer and provides pricing for the offers. The engine integrates with the productcatalog provided by TIBCO Fulfillment Catalog for product definition at design time.
OPE exposes the following services to generate and validate the offer, get the price for the generatedoffer, and get the product and price information:
● Get Offer Service
● Validate Offer Service
● Get Price Service
● Get Product Information Service
● Get Price Information Service
The following samples have been added for the OPE web services:
● Offer and price engine services model samples located in TIBCO_HOME/af/4.0/samples/Models
● Web service requests and responses, including the Offer ID functionality, located inTIBCO_HOME/af/4.0/samples/WebService
Get Offer ServiceThis service validates the incoming offer with the existing basket of the customer.
The validation considers product integrity, product compatibility with the products in the offer,segment compatibility with basket items, and group requirements. In case of ceased products, it checksif the item is present in TIBCO Fulfillment Subscriber Inventory in a blocked status. Depending uponthe migrations created in the product model, the offer includes the products to be migrated forotherwise incompatible products. Eligibility is evaluated for all products including the autoprovisioned products. In case any auto provisioned child is invalid, the product is ineligible.
The services utilize the following relationships:
● CompatibleSegment
● IncompatibleSegment
● Category
● CompatibleProduct
● IncompatibleProduct
● Migration including the existing ProductComposedOf and ProductRequiredFor
The offer is generated on a particular set of inputs and returns the list of products which can be offeredto the subscriber. The inputs in the request can include any of the following filters:
● Segments
● Categories
● Promotions
40
TIBCO® Fulfillment Order Management Web Services Guide
● Record Types and Record Subtypes
● Focus (focuses on products in the subscriber's basket or inventory)
● Characteristics
● Product Status
In case these filters are present, the products satisfying only these criteria are considered for the offer. Incase no filters are present, all product offerings are considered for generating offer and the validationrules are applied.
You can utilize the following request flags for this web service:
Get Offer Request Flags
Request Flag Name Default
ReturnIneligibleProducts True
ReturnBundleOfferings False
ReturnPrices False
ReturnProductInformation True
validateData True
validateProductRequiredForGroups True
validateProductComprisedOfGroups True
validateProductCompatibility True
validateSegmentCompatibility True
decomposeProducts False
basicValidationOnExistingOffer True
ValidateProdDate False
Get Offer Request
Get Offer Request Body Details
Element Name Element Type Description
BusinessTransactionID String
(Optional)
Used for the upstream web serviceto correlate a response with theappropriate request.
41
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
ReturnIneligibleProducts Boolean
(Optional)
Toggles whether products, whichare found to be ineligible as aresult of a specific reason, arereturned in the response. Theproducts that are present in theEligible Products Holder and areremoved as being incompatiblewith a product, or child of aproduct, in the order or inventoryare identified as ineligibleproducts once detected. Thedefault is value false.
ReturnBundleOfferings Boolean
(Optional)
Bundle support, which is forgetting eligible bundles for thecurrent basket and inventory. Onlythose products which haveoptional children in the orderrequest are eligible. The defaultvalue is false.
ReturnPrices Boolean
(Optional)
If set, prices for the generated offerare returned. The default value isfalse.
ReturnProductInformation Boolean
(Optional)
If set to true, it returns theproduct information for theeligible product. The default valueis false.
RequestControl/validateData Boolean
(Optional)
Not used in this service.
RequestControl/validateProductRequiredForGroups
Boolean
(Optional)
Toggles if ProductRequiredForgroups are evaluated in eligibility.The default value is true.
RequestControl/validateProductComprisedOfGroups
Boolean
(Optional)
Toggles if ProductComprisedOfgroups are evaluated in eligibility.The default value is true.
RequestControl/validateProductCompatibility
Boolean
(Optional)
Toggles if ProductCompatibility isevaluated in eligibility. The defaultvalue is true.
RequestControl/validateSegmentCompatibility
Boolean
(Optional)
Toggles if SegmentCompatibility isevaluated in eligibility. The defaultvalue is true.
42
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
RequestControl/validateProdDate Boolean
(Optional)
Toggles if the engine checks thatthe products are valid based on theconfigured start dates and enddates.
RequestControl/decomposeProducts Boolean
(Optional)
Toggles if products aredecomposed into autoprovisionedchildren or requiredForchildren.The default value is true.
RequestControl/ReturnProductInformation
Boolean
(Optional)
If existent, ProductInformation isadded directly to eligible andvisible ineligible products.
RequestControl/basicValidationOnExistingOffer
Boolean
(Optional)
Toggles if the existing basket andinventory is validated beforeselecting eligible products. Thedefault value is false.
RequestControl/ReturnProductInformationData
String
(Optional)
With this element, you canconfigure characteristic filters forreturning product information.There is an "or" relationshipbetween characteristic name(ReturnCharacteristicsName),characteristic description(ReturnCharacteristicsDescription) and characteristic value type(ReturnCharacteristicsValueType).
SubscriberID String
(Optional)
Eligible products are presented forthe subscriber specified in thesefields. This information is used inthe context of the order andinventory to perform compatibilityand integrity checks.
CustomerID String
(Optional)
Eligible products are presented forthe subscriber specified in thesefields. This information is used inthe context of the order andinventory to perform compatibilityand integrity checks.
43
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
Segment Boolean
(Optional)Information used to derive theinitial list of eligible products. Persegment type, a segment elementand all related segments should bemapped as name.
If multiple segments are providedfor a SegmentType, the union of allassociated products is returned.Multiple SegmentTypes return anintersection of all productscompatible with all SegmentTypes.
OrderDate dateTime
(Optional)
If OrderDate is entered, productsin the eligible product list arefiltered based on configured startand end dates of each product forthat date, otherwise the systemtime is taken.
RecordTypes String
(Optional)
If one or more RecordTypes valuesare included in the request,products in the eligible product listare filtered after the expansion toinclude AutoProvision and NonMandatory children. This meansthat all the products in the eligibleproduct list that meet the filteringcriteria are returned. RecordTypeis compared to the configuredclass of the product.
Multiple RecordTypesresults in a union of allproducts having one ofthe providedRecordTypes.
Promotions String
(Optional)
Promotion products is a reducedlist of products that is evaluated bythis request. Promotion productsare filtered according to the othercriteria specified in the request andtested for compatibility withproducts in the inventory or order.
44
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
RecordSubType String
(Optional)
If one or more RecordSubTypesare included in the request,products in the eligible product listare filtered while the expansionincludes AutoProvision and NonMandatory children. This meansthat all of the products in theeligible product list that meet thefiltering criteria, plus any childrenor children of children, arereturned. RecordSubType iscompared to the configuredSubclass of the Product.
Multiple RecordTypesresult in a union of allproducts having one ofthe providedRecordSubTypes.
Categories String
(Optional)If one or more categories areincluded in the request, productsin the eligible product list arefiltered for these categories. If youprovide multiple categories, anintersection of the results for eachcategory are presented.
If one auto provisioned child is notcompatible to a category, theparent is not either.
Focus Focus
(Optional)
With this field, you can set abasket or inventorying item intofocus. The focused item's childproducts are evaluated andattached as eligible products.
InputField Field
(Optional)
With this field, you can set linkingto relevant fields and returns toevaluate eligible products usingthose fields.
orderRequest orderRequest
(Optional)
Products in the basket can bepassed into the eligibility enginethrough the order to maintaincompatibility between productsthat are already ordered.
Status String This element is not being used.
45
TIBCO® Fulfillment Order Management Web Services Guide
Get Offer Response
Get Offer Response Details
Element Name Element Type Description
BusinessTransactionID String
(Optional)
If provided, it is passed fromthe request and can be used tocorrelate service calls acrossdisparate services to trackactual business process flows inthe system.
Get Offer Result Status Element Details
Element Name Element Type Description
operation String
(Optional)
The operation's name is"getEligibleProducts"
component String
(Optional)
The service's name is"ExtEligibilityAndValidation"
severity String
(Optional)
INFO, ERROR
code String
(Optional)
The error code is a string thatidentifies the error and theTIBCO FulfillmentOrchestration Suite componentthat produced the error. Anerror code of 0 indicates asuccessful invocation of theservice.
message String
(Optional)
A descriptive text stringassociated with code.
Eligible or Ineligible Product Element Details
Element Name Element Type Description
ProductID String
(Mandatory)
The ID of the eligible product.
InternalID String
(Optional)
The internal ID of the productinstance that is used forcorrelation withParentInternalID of a childproduct.
46
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
ParentInternalID String
(Optional)
The internal ID of the product'sparent instance that is used forcorrelation with InternalID of aparent product.
SubscriberID String
(Optional)
The subscriber ID for which theeligibility request was made.
CustomerID String
(Optional)
The customer ID for which theeligibility request was made.
UDFs UDFType
(Optional)
Each UDF contains a namefield and a value field.Eligibility tries to enrichproducts with UDFs as muchas possible by mapping UDFsfrom related (compatible,parent, child) products. Iflinking relevant UDFs couldnot be mapped from inventoryor basket items, they arecreated with a default value ${new}.
Messages String
(Optional)
Attached ValidationMessageelements which displayvalidation results.
Price ChildPriceBaseType
(Optional)
If set from request, it returnsthe price for this product.
Validation Message Details
ElementName Element Type Description
Code String
(Mandatory)
The code of the validation message.
Type String
(Optional)
The type of the validation message. It is mostly an errormessage because validation messages are only created incase of errors. The only exception is in case of a migration,because the possibility of a migration is indicated using amessage of type info.
Details String
(Optional)The corresponding textual message, configurable in the GVslocated in:
AFF/OfferConfigurationValidation/Constants/
Errors/OfferValidation
47
TIBCO® Fulfillment Order Management Web Services Guide
ElementName Element Type Description
CausingItem String
(Optional)
The CausingItem field indicates which type of item causedthe validation error or message, such as TrolleyItem or UDF.
CausingItemID
String
(Optional)
The CausingItemID field displays the ID of the item causingthe validation error or message, such as the ProductID orthe UDF Name.
CausingItemPosition
String
(Optional)
The CausingItemPosition indicates the position type of theitem causing the validation error or message, such as"LineNumber" for TrolleyItemor "InventoryID" forInventoryItems.
CausingItemPositionID
String
(Optional)
The CausingItemPositionID indicates the position of theitem causing the validation error or message, such as aLineNumber for TrolleyItemor an "InventoryID" forInventoryItems.
RuleViolation String
(Optional)
The RuleViolation displays the concrete violation of theparticular rule which created this message, forexample,violation of a maximum constraint ofProductComprised group would be "Group.Max: 2.0 /ActualCount: 3.0".
Validate Offer ServiceThis service validates the request based on the number of inputs including segments, order, and offer.When you submit an order request, that order is submitted to OPE. Based on the product model andgroup constraints, it returns a message stating if the products are valid or not.
The validation considers product integrity, product compatibility with the products in offer, segmentcompatibility, category compatibility, and group requirements of basket items.
Request Flag Name Default
validateData True
validateProductRequiredForGroups True
validateProductComprisedOfGroups True
validateProductCompatibility True
validateSegmentCompatibility True
decomposeProducts False
basicValidationOnExistingOffer True
validateProdDate False
48
TIBCO® Fulfillment Order Management Web Services Guide
Validate Offer Request
Validate Offer Request Details
Element Name Element Type Description
BusinessTransactionID String
(Optional)
Used for the upstream webservices to correlate a responsewith the appropriate request.
CalculateConsequences Boolean
(Mandatory)
Used to enforce migration forbasket items. If it is set tofalse, those items are invalid.If it is set to true, those itemsbecome valid, and thecorresponding migrationactions are done during therequest.
RequestControl/validateData RequestControl
(Optional)
With this element, you can turnoff the validation of UDFs,such as type, mandatory, andcompatibility, to support astaged order configuration inthe sales process. If this is notset, it defaults to true.
RequestControl/validateProdDate Boolean
(Optional)
Toggles if the engine checksthat the products are validbased on the configured startdates and end dates.
RequestControl/validateProductRequiredForGroups
Boolean
(Optional)
Toggles if ProductRequiredForgroups are evaluated ineligibility. The default value istrue.
RequestControl/validateProductComprisedOfGroups
Boolean
(Optional)Toggles ifProductComprisedOf groupsare evaluated in eligibility. Thedefault value is true.
RequestControl/validateProductCompatibility
Boolean
(Optional)Toggles ifProductCompatibility isevaluated in eligibility. Thedefault value is true.
validateSegmentCompatibility Boolean
(Optional)Toggles ifSegmentCompatibility isevaluated in eligibility. Thedefault value is true.
49
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
RequestControl/decomposeProducts Boolean
(Optional)Toggles if products aredecomposed intoautoprovisioned children orrequiredForchildren. Thedefault value is true.
RequestControl/basicValidationOnExistingOffer
Boolean
(Optional)Toggles if the existing basket isvalidated before selectingeligible products. The defaultvalue is false.
Segments Boolean
(Optional)
Segment information is used tovalidate the compatibility oforder items against theprovided segments.
orderRequest orderRequest
(Optional)
Products in the basket can bepassed into the validationengine through the order.
Validate Offer Response
Validate Offer Result Status Element Details
Element Name Element Type Description
Component String
(Optional)
The service's name isExtEligbilityAndValid
ation
Operation String
(Optional)
The operation's name isvalidate offer
Severity String
(Optional)
INFO, ERROR
Code String
(Optional)
The error code is thestring that identifies theerror and the TIBCOFulfillment OrchestrationSuite component thatproduced the error. Anerror code of 0 (zero)indicates a successfulinvocation of the service.
Message String
(Optional)
A descriptive text stringassociated with the code
50
TIBCO® Fulfillment Order Management Web Services Guide
Validation Pass Details
Element Name Element Type Description
ValidationPass Boolean
(Mandatory)
True if the request isvalidated and nomessages of type 'ERROR'are thrown
Validate Offer Result Message Details
ElementName Element Type Description
LineNumber
String
(Mandatory)
Indicates on which item the messages were created.
ProductID
String
(Mandatory)
The product ID for which the product the message was created.
Code String
(Mandatory)
The code of the validation message.
Type String
(Optional)
The type of validation message. It is mostly an error messagebecause validation messages are only created in case of errors. Theonly exception is in case of a migration.
Details String
(Optional)
The corresponding textual message is configurable in the GVslocated in
AFFOfferConfigurationValidation/Constants/Errors/
OfferValidation
CausingItem
String
(Optional)
The CausingItem field indicates which type of item caused thevalidation error or message, for example, TrolleyItem or UDF.
CausingItemID
String
(Optional)
The CausingItemID field displays the ID of the item causing thevalidation error or message, for example, the Product ID or the UDFname.
CausingItemPosition
String
(Optional)
The CausingItemPosition indicates the position type of the itemcausing the validation error or message, for example, LineNumberfor Orderline.
CausingPositionID
String
(Optional)
The CausingItemPositionID indicates the position of the itemcausing the validation error or message, for example, LineNumberfor Orderline.
RuleViolation
String
(Optional)
The RuleViolation displays the concrete violation of the particularrule that created this message, for example, violation of a maximumconstraint of Product comprised group is Group.Max: 2.0 / Actualcount: 3.0.
51
TIBCO® Fulfillment Order Management Web Services Guide
Validation Pass Details
Element Name Element Type Description
Order Order
(Mandatory)
The complete offer isreturned, regardless ofwhether order lines areadded or not.
Get Price ServiceThe getPrices request accepts multiple combinations of products in the request and generates multipleprices in the single response of these combinations.
The pricing service enables the pricing of a particular offer or order based on the following:
● Configuration of product and prices based on the offer catalog
● Configuration of the given set of products in conjunction with segments
● Characteristics pass as part of the getPrices request
The pricing service supports multiple pricing requests in a single service request. This service alsocalculates the prices in combination with optional products. The pricing service can accept multiplecombinations to generate requests. These are mapped to multiple request elements in the GetPricesrequestBody elements. The response for requestBody is contained in the ResponseBody. Pricing iscalculated per RequestBody and not across them.
Get Price Request
Request Header Details
Element Name Element Type
BusinessTransactionID String
(Optional)
ReturnTotals Boolean
(Optional)
Request Body Details
Element Name Element Type Description
ProductID Product
(Mandatory)
These are the productsconsidered for pricecalculation. They could be theproducts in basket or in thefinal offer. Any entities fromother request bodies within thegetPrices request are treatedseparately.
52
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
InternalID String
(Optional)The internal ID of the productinstance that is used forcorrelation withParentInternalID of a childproduct.
ParentInternalID String
(Optional)
The internal ID of the product'sparent instance that is used forcorrelation with InternalID of aparent product.
SubscriberID String
(Optional)
The subscriber ID for which therequest was made.
CustomerID String
(Optional)
The customer ID for which therequest was made.
ProductName String
(Optional)The product's name that isconfigured in the catalog.
ProductType String
(Optional)The class or type of the productthat is configured in thecatalog.
ProductSubType String
(Optional)
The subclass or subtype of theproduct that is configured inthe catalog.
calculationproduct/linenumber String
(Mandatory)
The line number of the orderline.
Product/Action String
(Mandatory)
Action for the product to becalculated. Prices are onlycalculated for PROVIDECalculation products.
Product/ProductID String
(Mandatory)
Product ID of the product.
Quantity Quantity
(Mandatory)
The quantity is specified by thequantity and the amounttogether with the UOM of thequantity. There is no validationon the quantity's UOM. Theyare not evaluated nor arequantities recalculated fordifferent UOMs, such asmilliliter to liter.
53
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
UDF UDF Type
(Optional)Each UDF contains a namefield and a value field specifiedat the product level (Productand OptionalProduct).
OptionalProduct OptionalProduct
(Optional)
These products are consideredoptional for the calculation. Aprice is calculated for eachcombination of theCalculationProducts and eachoptional product. For example,for a request with Product Aand Product B asCalculatedProducts, andProduct C, Product D, andProduct E as optional products,three results are available thatcontain a combination ofproducts A, B, and C, productsA, B, and D, and products A, B,and E.
RelatedSegment String
(Optional)
Segments for subscribers aremapped into these elements.They are then taken intoaccount for thePriceRequiresSegment andDiscountRequiresSegmentmechanism. Segments must bemapped in the Syntax:SegmentName-SegmentType.
Get Price Response
The response mapping rule maps the calculated prices and their attributes into UDF elements andcreates corresponding modifier elements for existing discounts. Specified UDFs on product level(Product and OptionalProduct) are passed through for easier identification and processing of productsfurther on. Price characteristics and Discounts characteristics are mapped additionally to the predefinedUDFs.
Get Price Response Body Details
Element Description
CorrelationID CorrelationID of the request body
Result The result element with all result details
Result/ReturnCode The return code for the pricing request
CalculationResult The pricing response body corresponding to thecombination of calculated and optional products
54
TIBCO® Fulfillment Order Management Web Services Guide
Element Description
CalculationResult/CalculationResultLine The calculated product in the combination
CalculationResultLine /lineNumber The line number of calculated and optionalproducts
CalculationResultLine/Action The action of the calculated product andoptional product
CalculationResultLine/ProductInformation ProductInformation of the calculated product
Quantity The quantity of the calculation of the productand optional product
PriceItem The price applied for the calculated product.This includes the prices of all the child productsfrom this line as well
Priceitem/UDFs The pricing UDFs
PriceItem/Modifier items The discounts and child discounts applied to theprice
ModifierItems/UDFs The discount UDFs
CalculationResult/Totals The total for the offer
Totals/TotalPrice The total per identical price type
Totalprice/Type The price type
Totalprice /Item The price item details
Item/ItemID The comma separated price IDs
Item/ItemSubTotal The price for the item before discount
Item/ ItemDiscount The total Discounts applied to these items
Item/FinalPrice The final price after discounts
Currency The currency of the price item
The ResultType contains a ReturnCode that reflects an overall result of the particular price request,valid values are 'SUCCESS', 'TECHNICAL-ERROR' and 'BUSINESS-ERROR'.
Get Price Response Return Messages
Return Message Reason
SUCCESS No errors
55
TIBCO® Fulfillment Order Management Web Services Guide
Return Message Reason
TECHNICAL- ERROR The unexpected behavior due to bugs or catalogconfiguration errors
BUSINESS-ERROR A product has no prices attached or an invalidproduct is passed in the request.
Each response element can have multiple results based on the number of OptionalProduct provided inthe request. Each calculation result contains lines with each line having a product associated with 0 to nprices. The particular price characteristics, including discount characteristics, are stored in UDFs.
Get Product Information ServiceThis service gives the product ID, relationships, attributes, and so on when requesting productinformation. It also gets the information present in the product model for the product.
You can search for a product by the following information:
● Product ID
● Record Type
● Record Sub Type
● Segment
● Category
The engine then provides all the products that fit the search criteria.
Get Product Information Request
Get Product Information Request Details
Element Name Element Type Description
BusinessTransactionID String
(Optional)
Used for the upstreamweb services to correlate aresponse with theappropriate request.
Query String
(Optional)
You have a choice:products can either beretrieved by specifying aquery or by explicitly theproduct IDs.
IDList IDList
(Optional)
You have a choice:Products can either beretrieved by specifying aquery or by explicitly theproduct IDs.
56
TIBCO® Fulfillment Order Management Web Services Guide
Get Product Information Request Query Details
Element Name Element Type Description
Class String
(Optional)
If one or more class values areincluded in the request,products in the eligible productlist are filtered after theexpansion to includeAutoProvision and NonMandatory children. Thismeans that all of the productsin the eligible product list thatmeet the filtering criteria arereturned. Class is compared tothe configured record type ofthe product.
Multiple classesresults in a union ofall products havingone of the providedclasses.
SubClass String
(Optional)
If one or more sub classes areincluded in the request, theproducts in the eligible productlist are filtered while expansionincludes AutoProvision andNon Mandatory children. Thismeans that all the products inthe eligible product list thatmeet the filtering criteria, plusany children or children ofchildren, are returned. Subclass is compared to theconfigured RecordSubType ofthe Product.
Multiple classesresults in a union ofall products havingone of the providedsub classes.
57
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
Category String
(Optional)
If one or more categories areincluded in the request, theproducts in the eligible productlist are filtered for thesecategories. If you providemultiple categories, anintersection of the results foreach category is presented.
If one auto provisioned child isnot compatible to a category,the parent is not either.
Segment Boolean
(Optional)Information is used to derivethe initial list of eligibleproducts. Per segment type, asegment element and allrelated segments should bemapped as name.
If multiple segments areprovided for a SegmentType,the union of all associatedproducts is returned. MultipleSegmentTypes returns anintersection of all productscompatible with allSegmentTypes.
Get Product Information Response
Get Product Information Response Details
Element Name Element Type Description
BusinessTransactionID String
(Optional)If provided, it is passedthrough from the requestand can be used tocorrelate service callsacross disparate servicesto track actual businessprocess flows in thesystem.
Get Product Information Result Status Details
This class is a result structure common for all operations. For any operation, the reply schema containsthis mandatory object. It specifies if the service execution succeeded or failed. Any client of anoperation must first check the value of the code field to identify if the execution was successful or not.
58
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
Component String
(Optional)
The service's name is OPE.
Operation String
(Optional)
The operation's name isvalidate offer.
Severity String
(Optional)
INFO, ERROR
Code String
(Optional)
The error code is thestring that identifies theerror and the TIBCOFulfillment OrchestrationSuite component thatproduced the error. Anerror code of 0 (zero)indicates a successfulinvocation of the service.
Message String
(Optional)
A descriptive text stringassociated with the code.
Get Product Information Element Details
Element Name Description
Product/ProductID The ID of the product that is configured in thecatalog.
Product/ ProductType The class or type of the product that isconfigured in the catalog.
Product / ProductName The product's name that is configured in thecatalog.
Product / Description The description of the product that is configuredin the catalog.
The long description is not returnedby this service.
Product/Characteristic The characteristics of the product.
Characteristic Element Details
Element Name Description
Name The ProductID of the characteristic.
59
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Description
Values/Value/Value The value of the characteristic. The optionalDefaultValue is configured to show theDefaultValue of the Characteristic. If theRelationshipValue is configured in theCharacteristic relationship, this value shows,and Value and the Characteristic's DefaultValueshows as DefaultValue. If no relationship valueis configured, Value and DefaultValue are thesame.
Values/Value/ValueType The product's name that is configured in thecatalog.
Product / Description The valueType of the Characteristic.
Get Price Information ServiceThis service fetches the pricing for all products, including individual products and the total of allproducts within the offer.
The Get Price service uses the Product Priced By relationship. It accepts multiple price calculationrequests in a single service call.
Each request body contains the following inputs:
● Calculation Product
Used for the multiple products for which the price needs to be calculated
● Optional Product
Used for each product considered in combination with the calculation of products
● Segment
Used for the prices belonging to a particular segment filter are calculated for the offer
● Quantity
Used for quantity for each product
Price is not displayed for child products separately. Prices are aggregated towards parents. The pricecontains child prices identified by the PriceComprisedOf relationship. If the price contains discounts, itis identified by the priced altered by discount. If a discount contains child discounts, it is identified bythe DiscountComprisedOf relationship. If a parent price contains a discount, that discount is appliedfor the child as well.
Get Price Information Request
Get Price Information Request Details
Element Name Element Type Description
BusinessTransactionID String
(Optional)
Used to allow theupstream web services tocorrelate a response withthe appropriate reques
60
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
ProductIDs String
(Mandatory)
The list of product IDs, forwhich the priceinformation is required
Get Price Information Response
Get Price Information Response Details
Element Name Element Type Description
Return Code Result Returns a code for theoperation status. The validvalues are Success,BUSINESS ERROR andTECHNICAL ERROR.
Element Name Element Type Description
Product ID Price Product The product ID of theproduct passed in request
PriceInformationType Price Product The price of the product
Element Name Element Type Description
Class [Attribute] PriceInformationType The price type of the price
Price/ID PriceInformationType The price record ID of the price
Price/Info/Class PriceInformationType The price type of the price
Price/Info/Priority PriceInformationType Price Priority in the product
Price/Info/isActive PriceInformationType Record_status of the pricerecord
Price/Info/StartDate PriceInformationType Start date as defined in pricemodel
Price/Info/EndDate PriceInformationType End date as defined in the pricemodel
Price/Info/ModelCharacteristics
PriceInformationType The characteristics of the pricemodel
Price/Info/Restrictions PriceInformationType PriceRequiresCharac,PriceRequiresSegment, andPriceRequiresProductGrouprelationship
61
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
Price/Info/Amount/Value PriceInformationType The charge value of the price
Price/Info/Amount/UOM PriceInformationType The charge UOM of the price
Price/Info/MinAmount/Value PriceInformationType The minimum amount of theprice
Price/Info/isOverride PriceInformationType The subclass of the price
Price/ChildPrices/Price PriceInformationType The child price of the parentprice
Price/ChildPrices/Price[Lvl] PriceInformationType The level of child price inhierarchy
Price/ChildPrices/Price[parentID]
PriceInformationType The price ID of the parentID
Price/ChildPrices/Price[ID] PriceInformationType The price ID of the child price
Price/ChildPrices/Info PriceInformationType The details of the price ID ofthe child price
62
TIBCO® Fulfillment Order Management Web Services Guide
Order Capture System Interfaces
Subscriber Inventory Interface
This interface is defined by the Order Capture System (OCS) and is used to retrieve a list of subscribers.Typically, projects using OCS may implement the subscriber inventory interface to wrap a CRM system.For instructions, see CRM Configuration on page 63.
Offer and Price Interface
The offer interface is used by OCS to retrieve the products and bundles that are eligible for a givensubscriber, and the prices of those products and bundles. The interface used is the Offering interfacefrom TIBCO OPE.
If you use your own offering engine and implement this interface, ensure that the interface behaves likeOPE.
Order Management Interface
This interface conforms to the Order Management Services defined in Order Management Services onpage 13 and is used to submit, amend, cancel, or retrieve orders. While OCS has been tested againstOrder Management Service, you may implement your own version to enrich orders.
If you use your own order management and implement this interface, ensure the interface behavior stillconfirms to Order Management Services.
CRM ConfigurationIf you want to implement a CRM to fetch subscribers in place of the Demo Subscriber Directory,complete the following tasks.
1. Develop a web service server implementing the Subscriber Inventory WSDL. These services aredefined in Subscriber Inventory Interface on page 64.
2. Toggle the Demo Subscriber Directory off. For instructions, see "Toggling Demo SubscriberDirectory" in the TIBCO Fulfillment Order Management Administration guide.
3. Fill in the network details of your web service in the "Subscriber Inventory Configuration" section,such as host port, security, and so on. You can use TIBCO MDM Configurator or TIBCOConfiguration Tool to configure a CRM.
Subscriber Inventory PaginationThe pagination information permits the subscriber interface to only return a fraction of the list ofmatching subscribers, because the list of matching subscribers may be very long.
Given a list of matching subscribers, the pagination information permits OCS to navigate this list, onlyquerying a chunk of it at a time. This is made by the following pagination parameters:
● OCS sends a startIndex, indicating the index of the first subscriber to be returned in the list.● OCS sends a number of subscribers to return.
For example, if you send a query for "Ray", OCS sends the search string "Ray," with the number ofsubscribers to return of 10 and a start index of 0. If 25 subscribers are matching, the response is a list of10 subscribers, indexes 0 to 9 in the list of matching subscribers. The response also contains theinformation that there are 25 matching subscribers. When you click to the next page, OCS resends a
63
TIBCO® Fulfillment Order Management Web Services Guide
search with "Ray", with startIndex "10" and 10 subscribers to return. This returns subscriber numbers 10to 19, indicating that there are 25 matching subscribers. Upon the next page, OCS issues the search withstartIndex 20. 6 subscribers should then be returned (20 to 25).This pagination relies on the fact that thesubscribers are ordered when the search is done (the list of matching subscribers is the same during the3 search queries). To achieve this, a sort of the matching subscribers after the search must be applied,such as an alphabetical sort on last name. This guarantees search stability.
The pagination functionality will be broken if the search is not stable.
Subscriber Inventory InterfaceOCS uses this interface to select subscribers based on a specific search string. This interface cannot beimplemented in TIBCO Fulfillment Orchestration Suite. Instead, it must be implemented by projectsthat have access to a CRM.
You can find the WSDL at $AF_HOME/schemas/wsdl/http/ocs/OCSSubscriberInventoryAccessPoint.wsdl. You can find the schemas at $AF_HOME/schemas/schema/ocs.
For demonstration purposes, OCS provides a hosted implementation, where you can create demosubscribers and subscriber details.
selectSubscribers
The WSDL contains one operation named SelectSubscribers. This operation takes a search string andpagination information as an argument. It returns the total number of subscribers matching the stringwithin the pagination.
The request message format is:
Element Name Element Type Description
searchString String The string to look for in allsubscribers. Therecommendation here is toperform a "string contains"operation on all subscriberfields, including addresses. Theoperation should be case-insensitive if the search stringis all lowercase or case-sensitive, or if the search stringcontains at least one uppercasecharacter.
64
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
pagination PaginationType The pagination element. Formore information, see Subscriber InventoryPagination on page 63.
The response format is:
Element Name Element Type Description
subscriberList SubscriberListType The list of matchingsubscribers, with appliedpagination, that is, a truncatedlist of matching subscribers
totalMatches int The total number of matchingsubscribers in the subscriberinventory system, if nopagination or truncation wasapplied.
The selectSubscriber SDL contains the following element types:
PaginationType
65
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
startIndex int The first requested subscriberindex in the full list ofmatching subscribers. For moreinformation, see SubscriberInventory Pagination on page63.
fetchSize int The number of matchingsubscribers to return in theresponse. For moreinformation, see SubscriberInventory Pagination on page63.
SubscriberListType
Element Name Element Type Description
id string The subscriber's ID
customerId string The subscriber's customer ID.Usually, the ID would be theunique ID of the subscriber,while the customerId could bethe company the subscriber isworking for.
firstName string The first name of the subscriber
lastName string The last name of the subscriber
memberSince int When the subscriber wasentered into the system
invoiceAddress type The billing address
66
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
deliveryAddress type Where the product or service isdelivered
closestStoreAddress type The closest store to thesubscriber's address
AddressType
Element Name Element Type Description
line1 string The first line of the subscriber'saddress
line2 string The second line of thesubscriber's address
locality string The locality in which thesubscriber resides
region string The region in which thesubscriber resides
postCode string The postal zip code for thesubscriber
country string The country in which thesubscriber resides
ResultFault
67
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
errorCode string The error code
description string The description of the error
message string The message of the error
68
TIBCO® Fulfillment Order Management Web Services Guide
Common Data Format Specifications
This appendix describes generic object classes used as input and output objects in the operations andservices.
ResultStatusThis class is a result structure common for all operations. For any operation, the reply schema containsthis mandatory object. It specifies if the service execution succeeded or failed.
Any client of an operation must first check the value of the "severity" field to identify if the executionwas successful or not.
The XML schema structure is:
This class contains the following elements:
ResultStatus Element Details
Element name Description
Component Name of the component that detected the error.
For the TIBCO Fulfillment Order Management component implementation,this field is set to the deployment variable of the TIBCO BusinessEvents inwhich the error occurred.
Operation This text field identifies the operation in progress at the point of failure. This ishelpful when a request consists of a number of operations and the same codemay be returned in more than one operation.
This field displays the name of the operation where the error occurred. Errorsthat occur within TIBCO BusinessEvents are identified by the same operationname with '-BE' appended to the name.
Severity A single character {F E W I S}.
F- Fatal, E - Error, W - Warning, I - Information, and S - Success.
69
TIBCO® Fulfillment Order Management Web Services Guide
Element name Description
Code The error code, a string that identifies the error and the TIBCO FulfillmentOrder Management component that produced the error. This code is alsovisible inside component log and audit files.
Refer Response Codes and Messages on page 92 for details of this format.
Message A descriptive text string associated with code.
ResultFaultThe XML schema structure for the ResultFault is:
ResultFault Element Details
Element name Description
code The error code, a string that identifies the error and the TIBCO FulfillmentOrder Management component that produced the error. This code is alsovisible inside component log and audit files.
Refer Response Codes and Messages on page 92 for details of this format.
message A descriptive text string associated with code.
NotificationThis class is the data model for the Notification object.
70
TIBCO® Fulfillment Order Management Web Services Guide
Order NotificationThis class is the data model for the Order Notification object.
71
TIBCO® Fulfillment Order Management Web Services Guide
Plan NotificationThis class is the data model for the Plan Notification object.
72
TIBCO® Fulfillment Order Management Web Services Guide
RoleThis class is the data model for the Role object. It may be used across services and ID defined in XSDformat.
73
TIBCO® Fulfillment Order Management Web Services Guide
Role Details
Element Name Element Type Description
RoleID String
(Mandatory)
Role identifier
RoleName String
(Mandatory)
Role name
OrderThis class is the data model for the Order object. It may be used across services and ID defined in XSDformat.
74
TIBCO® Fulfillment Order Management Web Services Guide
Order Element Details
Element Name Element Type Description
orderID String
(Optional)
Order ID. Not required duringSubmit Order but is returnedby Get Order Details and GetOrders.
orderRef String Order reference ID. If theorderRef element is sent as anempty element in theSubmitOrder request, thenOMS generates the orderRefelement. If the orderRefelement is not sent, thenschema validation fails.
header headerType
(Mandatory)
Order Header data structure.
line lineType Order Line data structure.
OrderHeaderThis class is the data model for the header object. It may be used across services and ID defined in XSDformat.
75
TIBCO® Fulfillment Order Management Web Services Guide
OrderHeader Element Details
Element Name Element Type Description
OrderDescription String
(Optional)
Order description.
OrderStatus String
(Optional)
Current order status.
CustomerID String
(Optional)
Customer unique identifier.Omit for non-corporate orders.Either CustomerID orSubscriberID is necessary.
SubscriberID String
(Optional)
Subscriber unique identifier.Omit for corporate orders.Either CustomerID orSubscriberID is necessary.
SubmittedDate Date
(Optional)
Date order was submitted.
SubmittedTime Time
(Optional)
Time order was submitted.
RequiredByDate DateTime
(Optional)
Date and time that a particularorder is required to start on.
orderPriority Integer(Optional) The priority value assigned toorder. The value ranges from0-9.
To use orderPriority,schemas under$AF_HOME/schemas/
schema/oms shouldonly be used.
ExpirationDate Date
(Optional)
Expiration date for the offer.Not relevant for orders.
ExpectedCompletionDate DateTime
(Optional)
Date order is expected to becompleted.
InvoiceAddress Type
(Optional)
Invoice address.
InvoiceAddress/AddressLine1 String
(Mandatory)
Invoice address line 1.
77
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
InvoiceAddress/AddressLine2 String
(Optional)
Invoice address line 2.
InvoiceAddress/Locality String
(Mandatory)
Invoice address locality.
InvoiceAddress/Region String
(Optional)
Invoice address region.
InvoiceAddress/PostCode String
(Mandatory)
Invoice address post code.
InvoiceAddress/Country String
(Mandatory)
Invoice address country.
DeliveryAddress Type
(Optional)
Delivery address.
DeliveryAddress/AddressLine1 String
(Mandatory)
Delivery address line 1.
DeliveryAddress/AddressLine2 String
(Optional)
Delivery address line 2.
DeliveryAddress/Locality String
(Mandatory)
Delivery address locality.
DeliveryAddress/Region String
(Optional)
Delivery address region.
DeliveryAddress/PostCode String
(Mandatory)
Delivery address post code.
DeliveryAddress/Country String
(Mandatory)
Delivery address country.
Notes String
(Optional)
Order notes.
SLAs Type
(Optional)
List of SLAs passed through toback-end systems. These SLAsdo not apply within the ordermanagement.
SLAs/SLA Type (*) SLA type.
78
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
SLAs/SLA/SLAID String
(Mandatory)
SLA ID.
UDF Type (*) UDF type
UDF/Name String
(Mandatory)
Name of the attribute.
UDF/Value String
(Mandatory)
Value of the attribute.
OrderLineThis class is the data model for the OrderLine object. It may be used across services and ID defined inXSD format.
79
TIBCO® Fulfillment Order Management Web Services Guide
The following order line actions are supported:
Provide Install a new product or service.
Update Update an existing product or service.
Cease Terminate an existing product or service.
Cancel Cancel an outstanding order currently in-flight.
80
TIBCO® Fulfillment Order Management Web Services Guide
Line Element Details
Element Name Element Type Description
lineNumber String
(Mandatory)
Order line number.
subscriberID String
(Optional)
Subscriber ID for this order line.Omit for orders for corporatecustomers not linked to anindividual subscriber.
productID String
(Mandatory)
ID of the product being ordered.
productVersion String Version ID of the product beingordered.
quantity String
(Mandatory)
Number of items required for eachproduct in this line.
uom String
(Mandatory)
Unit of measure.
deliveryAddress addressType (Mandatory) Delivery address.
action String
(Mandatory)Action required. Valid values are:
● PROVIDE
● UPDATE
● CEASE
● CANCEL
actionMode String
(Optional)Action mode. This is optionalsupplemental information to gowith OrderLineAction. Valid valueis:
● MOVE
requiredByDate DateTime
(Mandatory)
Date and time that a particularorder is required to start on.
linkID String
(Optional)
Correlation ID used by ordermanagement to group order linestogether for provisioning.
inventoryID String
(Optional)
Inventory ID for this product.
81
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
notes String
(Optional)
Order line notes.
slaID String
(Mandatory)
SLA ID. (SLAs passed through toback-end systems. These SLAs donot apply within ordermanagement itself.)
udf String
(Mandatory)
Value of the attribute. This must beminimum of one character inlength.
characteristic Type
(Optional)
List of characteristics.
customerItemID String
(Optional)
Customer item ID.
status String (Optional) Current order status.
statusChanged
extension
ProductThis class is the data model for the Product object. It may be used across services and ID defined in XSDformat.
Product Element Details
Element Name Element Type Description
ProductID String
(Mandatory)
Product identifier. This valuemust be unique.
82
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
ProductName String
(Mandatory)
Product name as configured inthe Product Catalogue.
ProductType String
(Mandatory)
Product type as configured inthe Product Catalogue.
ProductSubType String
(Optional)
Product sub-type as configuredin the Product Catalogue.
Description String
(Mandatory)
Product description asconfigured in the ProductCatalogue.
CharacteristicThis class is the data model for the Characteristic object. It may be used across services and is defined inXSD format.
Characteristic Element Details
Element Name Element Type Description
name String
(Mandatory)
Characteristic name asconfigured in the ProductCatalogue.
83
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
description String
(Mandatory)
Characteristic description asconfigured in the ProductCatalogue.
Values Type
(Mandatory)
List of characteristic values asconfigured in the ProductCatalogue.
Values/value Type (*) Characteristic value.
Values/value/name String
(Mandatory)
Characteristic value name.
Values/value/type String
(Mandatory)
Characteristic value data type.
Values/value/value String
(Optional)
Characteristic value.
Values/value/valueFrom String
(Optional)
Characteristic value rangefrom.
Values/value/valueTo String
(Optional)
Characteristic value range to.
Execution PlanThis class is the data model for the plan object. It may be used across services and ID defined in XSDformat.
84
TIBCO® Fulfillment Order Management Web Services Guide
Here is the data model for the planItem object.
85
TIBCO® Fulfillment Order Management Web Services Guide
Plan and PlanItem Element Details
Element Name Element Type Description
planID String
(Mandatory)
Unique identifier for the plan.
86
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
orderID String
(Mandatory)
Order ID of the order to whichthis plan is related.
orderRef String Order reference ID.
Originator String Originator of the AOPDrequest that created this plan.
planCreationDate DateTime
(Mandatory)
Date and time the plan wascreated.
status String
(Mandatory)
Status of the overall plan.
statusChanged dateTime
(Mandatory)
Date Time when the last statuswas changed.
description String
(Mandatory)
Description of the plan.
planStartDate dateTime
(Mandatory)
Start date and time for the plan.
planStartMillis long Timestamp when the planstarted executing.
isAmendment boolean Flag identifying if the plan isan amendment plan.
planItem planItemType Composite object withinformation on plan.
udf udfSetType Composite object withinformation related to UDFwhich is user-defined data.
planItemID String Unique Id identifying the planItem.
planItemName String Name of the plan item.
planFragmentUniqueID String The id of the processcomponent to invoke whenexecuting the plan item.
planFragment
orderLine List List of order lines for thecorresponding plan item.
87
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
action String Action for the plan Item.
startMilestone
milestone
parentID Plan Item Ids on which thisplan item depends.
childID String Plan Item Ids which aredependent on this plan item
siblingID String Plan Item Ids of siblingproducts for this plan item.
dependentID String Plan Item Ids of dependentproducts for this plan item.
startTimeStamp long Timestamp that indicates whenthe plan item started execution.
endTimeStamp long Timestamp that indicates whenthe plan item completedexecution.
cancelled boolean Flag indicating if the plan wascancelled.
isNonExecuting boolean Flag indicating if the plan isnon-executing i.e no plan itemwill be generated for this plan.
isNoResiprocalAction boolean
PlanFragmentThis class is the data model for the planFragment object. It may be used across services and ID defined inXSD format.
88
TIBCO® Fulfillment Order Management Web Services Guide
Pagination TypePaginationType
Element Name Element Type Description
startIndex int The first requested subscriberindex in the full list ofmatching subscribers. For moreinformation, see SubscriberInventory Pagination on page63.
89
TIBCO® Fulfillment Order Management Web Services Guide
Element Name Element Type Description
fetchSize int The number of matchingsubscribers to return in theresponse. For moreinformation, see SubscriberInventory Pagination on page63.
SubscriberListTypeSubscriberListType
Element Name Element Type Description
id string The subscriber's ID.
customerId string The subscriber's customer ID.Usually, the ID would be theunique ID of the subscriber,while the customerId could bethe company the subscriber isworking for.
firstName string First name of the subscriber
lastName string Last name of the subscriber
memberSince int When the subscriber wasentered into the system
invoiceAddress type The billing address
deliveryAddress type Where the product or service isdelivered
closestStoreAddress type The closest store to thesubscriber's address
90
TIBCO® Fulfillment Order Management Web Services Guide
AddressTypeAddressType
Element Name Element Type Description
line1 string First line of the subscriber'saddress
line2 string Second line of the subscriber'saddress
locality string Locality the subscriber residesin
region string Region the subscriber resides in
postCode string Postal zip code for thesubscriber
country string Country the subscriber residesin
91
TIBCO® Fulfillment Order Management Web Services Guide
Response Codes and Messages
This appendix lists the response codes and message details.
Error CodesThe following error codes are currently implemented.
Code Message
TIBCO-AFF-OMS-100000 An unexpected error occurred. Contact system administrator formore details.
TIBCO-AFF-OMS-100001 The input invalid.
TIBCO-AFF-OMS-100003 Order reference already used. Order reference can not be reused.
TIBCO-AFF-OMS-100004 Order reference not found. Invalid amendment request.
TIBCO-AFF-OMS-100005 No record exists.
TIBCO-AFF-OMS-100007 Invalid request. Provide either Order Reference or Order ID.
TIBCO-AFF-OMS-100012 Search criteria is invalid.
TIBCO-AFF-OMS-100013 No amended plan for order {0} was received.
TIBCO-AFF-OMS-100015 Invalid token.
TIBCO-AFF-OMS-100016 The order cannot be amended. Amendment already in progress.
TIBCO-AFF-OMS-100017 The token expired.
TIBCO-AFF-OMS-100018 The lock on specified order could not be obtained.
TIBCO-AFF-OMS-100019 The lock on specified order could not be released.
TIBCO-AFF-OMS-100020 Order {OrderRef} not found / Order {OrderID} not found.
TIBCO-AFF-OMS-100023 SortBy missing in one of SortCriteria. SortBy is required whenmultiple SortCriteria is specified.
TIBCO-AFF-OMS-100024 SortSequence missing in one of SortCriteria. SortSequence isrequired when multiple SortCriteria is specified.
TIBCO-AFF-OMS-100025 SortSequence should be a number greater than 0.
TIBCO-AFF-OMS-100034 OrderLine {0} not found.
TIBCO-AFF-OMS-100035 The order submission response was timed out.
TIBCO-AFF-OMS-100036 The task was rejected. Please try again later.
92
TIBCO® Fulfillment Order Management Web Services Guide
Code Message
TIBCO-AFF-OMS-100037 The purge ID {0} doesn't exist in the system.
TIBCO-AFF-OMS-100038 The purge ID shouldn't be blank.
TIBCO-AFF-OMS-100039 The order type {0} is not valid.
TIBCO-AFF-OMS-100040 The archive value {0} is not valid.
TIBCO-AFF-OMS-100041 The date format is not valid.
TIBCO-AFF-OMS-100042 No orders found for the input criterion.
TIBCO-AFF-OMS-100043 Rule name not specified.
TIBCO-AFF-OMS-100044 Rule {0} not found.
TIBCO-AFF-OMS-100045 Rule already exists.
TIBCO-AFF-OMS-100046 The action value is not valid.
TIBCO-AFF-OMS-100047 No orderID or orderRef present in the request.
TIBCO-AFF-OMS-100048 OrderID and orderRef should not be present together.
TIBCO-AFF-OMS-100049 RuleName {0} already Exists.
TIBCO-AFF-OMS-100050 Order {0} not found for Amendment.
TIBCO-AFF-OMS-100051 Request for enriching the plan timed out.
TIBCO-AFF-OMS-100052 Orchestrator UDF not found or value of Orchestrator udf is null.Invalid Order request.
TIBCO-AFF-OMS-100053 The order state transition from {0} to {1} is not a valid transition.
TIBCO-AFF-OMS-100055 Duplicate order line {0} in the request.
TIBCO-AFF-OMS-100056 ORDER ALREADY COMPLETED. CAN NOT WITHDRAW
TIBCO-AFF-OMS-100057 Invalid Start Record Number. Should be positive number.
TIBCO-AFF-OMS-100058 Invalid End Record Number. Should be positive number.
TIBCO-AFF-OMS-100059 Invalid Pagination Input. Start Record should be less than endrecord.
TIBCO-AFF-OMS-100060 Invalid Count value {0}.
TIBCO-AFF-OMS-100061 SortBy {0} in SortCriteria is invalid. Valid values are ASC andDESC.
93
TIBCO® Fulfillment Order Management Web Services Guide
Code Message
TIBCO-AFF-OMS-100062 The order type {0} is not valid.
TIBCO-AFF-OMS-100063 Start/End date is not present in the request.
TIBCO-AFF-OMS-100064 Action and requiredByDate cannot be modified simultaneously inan order line.
TIBCO-AFF-OMS-100065 Action and UDFs cannot be modified simultaneously in an orderline.
TIBCO-AFF-OMS-100066 requiredByDate and UDFs cannot be modified simultaneously inan order line.
TIBCO-AFF-OMS-100080 Tenant with ID {0} not present.
TIBCO-AFF-OMS-999999 Service not Available
TIBCO-AFF-USER-100019 UserPassword exceeded maximum length of 20 characters.
TIBCO-AFF-USER-100020 UserName [{0}] exceeded maximum length of 12 characters.
TIBCO-AFF-USER-100022 User [{0}] already exists.
TIBCO-AFF-USER-100025 Invalid role {1} for user {0}. Valid roles are {2}.
TIBCO-AFF-USER-100027 User name not specified.
TIBCO-AFF-USER-100028 User {0} not found.
TIBCO-AFF-USER-100030 New password for user {0} not specified.
TIBCO-AFF-USER-100032 User {0} not authenticated.
TIBCO-AFF-USER-100033 Extension exceeds length. Extension data should not be more than4000 characters long.
TIBCO-AFF-AFECA-100002 Invalid URL
TIBCO-AFF-AFECA-100003 Unable to resolve the destination : { }
TIBCO-AFF-AFECA-100005 Unable to connect to the end point
TIBCO-AFF-AFECA-100006 Protocol not supported
TIBCO-AFF-AFECA-100007 Unable to add rule to rule repository
TIBCO-AFF-AFECA-100008 Exception occurred while encrypting parameter
TIBCO-AFF-AFECA-100009 Exception occurred while decrypting parameter
TIBCO-AFF-AFECA-100010 Unable to parse rule configuration file due to {}
94
TIBCO® Fulfillment Order Management Web Services Guide
Code Message
TIBCO-AFF-AFECA-100011 Unable to load rules from database due to {}
TIBCO-AFF-AFECA-100012 Unable to open stream to load rule content due to {}
TIBCO-AFF-AFECA-100015 Event Name specified for the rule
TIBCO-AFF-AFECA-100016 Invalid JMS destination type
TIBCO-AFF-AFECA-100017 User credential is missing
TIBCO-AFF-AFECA-100018 Port must be a valid number
TIBCO-AFF-AFECA-100019 Valid Tibbr subject must be specified
TIBCO-AFF-AFECA-100020 Invalid email id
TIBCO-AFF-AFECA-100021 Unknown host exception
TIBCO-AFF-AFECA-100022 Unable to parse host response
TIBCO-AFF-AFECA-100023 Invalid user credential
TIBCO-AFF-AFECA-100024 Unable to get user profile
TIBCO-AFF-AFECA-100025 Tibbr Subject not found
TIBCO-AFF-AFECA-100026 File path not found
AFF-JM-PLAN-0100 Plan has exceeded typical duration
AFF-JM-PLAN-0110 Plan has exceeded maximum duration
AFF-JM-PLAN-0120 Plan has exceeded out of scope threshold
AFF-JM-PLAN-0200 Plan is predicted to exceed typical duration and is increasing
AFF-JM-PLAN-0210 Plan is predicted to exceed typical duration and is decreasing
AFF-JM-PLAN-0220 Plan is no longer predicted to exceed typical duration
AFF-JM-PLAN-0230 Plan is predicted to exceed maximum duration and is increasing
AFF-JM-PLAN-0240 Plan is predicted to exceed maximum duration and is decreasing
AFF-JM-PLAN-0250 Plan is no longer predicted to exceed maximum duration
AFF-JM-PLANITEM-0100 Plan item has exceeded typical duration
AFF-JM-PLANITEM-0110 Plan item has exceeded maximum duration
AFF-JM-PLANITEM-0120 Plan item has exceeded required start
95
TIBCO® Fulfillment Order Management Web Services Guide
Code Message
AFF-JM-PLANITEM-0200 Plan item start is predicted to exceed required start and isincreasing
AFF-JM-PLANITEM-0210 Plan item start is predicted to exceed required start and isdecreasing
AFF-JM-PLANITEM-0220 Plan item is no longer predicted to exceed required start
TIBCO-AFF-AOPD-100001 Circular dependency encountered while creating dependencybetween parent product [{0}] and child product [{1}]
TIBCO-AFF-AOPD-100002 Xpath expression specified is invalid [{0}]
TIBCO-AFF-AOPD-100003 Unexpected Error while processing Xpath {0}
TIBCO-AFF-AOPD-100004 Planfragment mapping not found in the product Model [{0}] andaction [{1}]in Main or Affinity Plan fragments.
TIBCO-AFF-AOPD-100005 Product model not found for product [{0}]
TIBCO-AFF-AOPD-100006 Invalid Product(s) in order {0}
TIBCO-AFF-AOPD-100007 Invalid Action(s) in order {0}
TIBCO-AFF-AOPD-100008 Duplicate order line {0} in the request.
TIBCO-AFF-OPE-100001 Product model [{0}] is not active or is not valid for the required date
TIBCO-AFF-OPE-100002 Product model not found for promotion [{0}]
TIBCO-AFF-OPE-100004 Action Mode is not specified for action [{0}] for product [{1}] inorderline [{2}]
TIBCO-AFF-OPE-100005 Items in focus [{0}] could not be resolved for line id [{1}]
TIBCO-AFF-OPE-100006 Incompatible UDF was found
TIBCO-AFF-OPE-100007 Mandatory UDF is missing
TIBCO-AFF-OPE-100008 UDF length exceeded
TIBCO-AFF-OPE-100009 UDF datatype doesnt confirm to the configured regex
TIBCO-AFF-OPE-100010 UDF range conform to the configured range
TIBCO-AFF-OPE-100011 UDF range conform to the configured regex
TIBCO-AFF-OPE-100012 UDF record type value doesnt conform to the configured value incatalog
TIBCO-AFF-OPE-100013 Incompatible products found in offer
96
TIBCO® Fulfillment Order Management Web Services Guide
Code Message
TIBCO-AFF-OPE-100014 Single Use Incompatible products found in offer
TIBCO-AFF-OPE-100015 Segment Incompatible products found in offer
TIBCO-AFF-OPE-100016 Group constraint violation. Count of products in group notbetween maximum and minimum.
TIBCO-AFF-OPE-100017 Group constraint violation. Count of products in group is greaterthan maximum.
TIBCO-AFF-OPE-100018 Group constraint violation. Count of products in group is lesserthan minimum.
TIBCO-AFF-OPE-100019 Record constraint violation. Count of products is lesser thanminimum.
TIBCO-AFF-OPE-100020 Record constraint violation. Count of products is greater thanmaximum.
TIBCO-AFF-OPE-100021 Record constraint violation. Count of products is not betweenmaximum and minimum.
TIBCO-AFF-OPE-100022 Mandatory Link UDF missing
97
TIBCO® Fulfillment Order Management Web Services Guide
Orchestrator Pre-processors and Rules
Pre-processors
Pre-processors Description
deleteOrderRequestPreProcessor This pre-processor is modified to instantiate adeleteplantrigger alongwith deleteordertrigger,which contains order and plan conceptsrespectively to be deleted.
Rules
deleteOrder (DeleteRuleSet) The rule condition is changed to instantiatedeleteplantrigger also. The rule is modified todelete plans along with the orders.
98
TIBCO® Fulfillment Order Management Web Services Guide