Oracle Application Integration Architecture Siebel CRM Integration Pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care Implementation Guide, Release 11.2

Release 11.2

E26496-02

Contents

List of Figures

List of Tables

Title and Copyright Information

Preface

- Oracle AIA Communications Pre-Built Integrations

- Common Oracle AIA Pre-Built Integration Guides

- Documentation Accessibility

- Additional Resources

What's New in This Guide for Release 11.2

1 Siebel CRM Integration Pack for Oracle Communications BRM: Agent Assisted Billing Care Overview

- 1.1 Process Integration for Billing Management

- 1.2 Process Integration for Customer Management

- 1.3 Process Integration for Collections Management

Part I Understanding the Delivered Integrations

2 Understanding the Process Integration for Billing Management

- 2.1 Process Integration for Billing Management Overview

- 2.2 Billing Management Business Process Flow

- 2.3 Solution Assumptions and Constraints

3 Account Balance Integration Flow

- 3.1 Account Balance Integration Flows Overview

- 3.2 QueryBalanceSummary Integration Flow

- 3.3 QueryBalanceGroupList Integration Flow

- 3.4 QueryBalanceDetails Integration Flow

- 3.5 QueryBalanceGroupServices Integration Flow

- 3.6 Oracle BRM Interfaces

- 3.7 Siebel CRM Interfaces

- 3.8 Industry Oracle AIA Components

- 3.9 Integration Services

- 3.9.1 AccountBalanceSiebelCommsReqABCS

- 3.9.2 QueryBalanceSummarySiebelCommsReqABCSImpl

- 3.9.3 QueryCustomerPartyListBRMCommsProvABCSImpl

- 3.9.4 QueryBalanceGroupListSiebelCommslReqABCSImpl

- 3.9.5 QueryBalanceDetailsSiebelCommsReqABCSImpl

- 3.9.6 QueryBalanceGroupServicesSiebelCommsReqABCSImpl

- 3.9.7 QueryInstalledProductListBRMCommsProvABCSImpl

4 Invoice Integration Flow

- 4.1 Invoice Integration Overview

- 4.2 QueryInvoiceList Integration Flow

- 4.3 QueryInvoice Integration Flow

- 4.4 QueryInvoiceUsageAllocation Integration Flow

- 4.5 SearchInvoiceUsageAllocation Integration Flow

- 4.6 QueryInvoiceUsageAllocationResource Integration Flow

- 4.7 Oracle BRM Interfaces

- 4.8 Siebel CRM Interfaces

- 4.9 Industry Oracle AIA Components

- 4.10 Integration Services

- 4.10.1 InvoiceSiebelCommsReqABCS

- 4.10.2 QueryInvoiceListBRMCommsProvABCSImpl

- 4.10.3 QueryInvoiceSiebelCommsReqABCSImpl

- 4.10.4 QueryInvoiceEventDetailsSiebelCommsReqABCSImpl

- 4.10.5 SearchInvoiceEventDetailsSiebelCommsReqABCSImpl

- 4.10.6 QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl

5 Service Usage Integration Flow

- 5.1 Service Usage Integration Overview

- 5.2 QueryServiceUsage Integration Flow

- 5.3 QueryServiceUsageAllocation Integration Flow

- 5.4 SearchServiceUsageAllocation Integration Flow

- 5.5 QueryServiceUsageAllocationResource Integration Flow

- 5.6 Oracle BRM Interfaces

- 5.7 Siebel CRM Interfaces

- 5.8 Industry Oracle AIA Components

- 5.9 Integration Services

- 5.9.1 UnbilledUsageSiebelCommsReqABCS

- 5.9.2 QueryUnbilledUsageSiebelCommsReqABCSImpl

- 5.9.3 QueryServiceUsageListBRMCommsProvABCSImpl

- 5.9.4 QueryUnbilledUsageEventDetailsSiebelCommsReqABCSImpl

- 5.9.5 SearchUnbilledUsageEventDetailsSiebelCommsReqABCSImpl

- 5.9.6 QueryUnbilledUsageBalanceDetailsSiebelCommsReqABCSImpl

6 Payment Integration Flow

- 6.1 Payment Integration Overview

- 6.1.1 Creating Payments

- 6.1.2 Viewing Payment History

- 6.1.3 Searching for Payments

- 6.2 CreateReceivedPayment Integration Flow

- 6.3 QueryReceivedPaymentList Integration Flow

- 6.4 SearchPayment Integration Flow

- 6.5 Oracle BRM Interfaces

- 6.6 Siebel CRM Interfaces

- 6.7 Industry Oracle AIA Components

- 6.8 Integration Services

- 6.8.1 PaymentSiebelCommsReqABCS

- 6.8.2 CreatePaymentSiebelCommsReqABCSImpl

- 6.8.3 CreateInvoicePaymentSiebelCommsReqABCSImpl

- 6.8.4 CreateReceivedPaymentBRMCommsProvABCSImpl

- 6.8.5 QueryPaymentSiebelCommsReqABCSImpl

- 6.8.6 QueryInvoicePaymentSiebelCommsReqABCSImpl

- 6.8.7 SearchPaymentSiebelCommsReqABCSImpl

- 6.8.8 QueryReceivedPaymentListBRMCommsProvABCSImpl

7 Adjustment Integration Flow

- 7.1 Adjustment Integration Overview

- 7.2 QueryAccountBalanceAdjustment Integration Flow

- 7.3 CreateAccountBalanceAdjustment Integration Flow

- 7.4 Oracle BRM Interfaces

- 7.5 Siebel CRM Interfaces

- 7.6 Industry Oracle AIA Components

- 7.7 Integration Services

- 7.7.1 AdjustmentSiebelCommsReqABCS

- 7.7.2 QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl

- 7.7.3 QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl

- 7.7.4 CreateAccountBalanceAdjustmentSiebelCommsABCSImpl

- 7.7.5 CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl

- 7.7.6 UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl

- 7.7.7 CreateAccountBalanceAdjustmentListResponseBRMCommsJMSConsumer

- 7.7.8 CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer

- 7.7.9 CreateAccountBalanceAdjustmentSiebelCommsJMSConsumer

8 Understanding the Process Integration for Collections Management

- 8.1 Process Integration for Collections Management Overview

- 8.2 Collections Management Business Process Flow

- 8.3 Solution Assumptions and Constraints

- 8.4 Sync Collection Scenarios and Actions Integration Flow

- 8.4.1 Time Zone Handling

- 8.4.2 Understanding Sync Collection Scenarios and Actions Integration Flow

- 8.4.2.1 Business Process Flow for the Sync Collection Scenarios and Actions Integration

- 8.4.2.2 Design Assumptions and Constraints

- 8.4.3 Configuring and Generating Data in Oracle BRM

- 8.4.3.1 Configuring the Data in Oracle BRM

- 8.4.3.2 Generating the Data in Oracle BRM

- 8.4.4 Picking Up and Transforming the Data

- 8.4.5 Configuring and Running the Sync Collection Scenarios and Actions Integration

- 8.4.5.1 Configuring the Sync Collection Scenarios and Actions Integration

- 8.4.5.2 Running the Sync Collection Scenarios and Actions Integration

- 8.5 Sync Collection Actions Status Integration Flow

- 8.6 Oracle BRM Interfaces

- 8.7 Siebel CRM Interfaces

- 8.8 Industry Oracle AIA Components

- 8.9 Integration Services

- 8.9.1 UpdateCreditAlertSiebelCommsReqABCSImpl

- 8.9.2 UpdateCreditAlertBRMCommsProvABCSImpl

Part II Implementing the Delivered Integrations

9 Configuring the Process Integration for Billing Management

- 9.1 Setting Up Oracle BRM

- 9.2 Setting Up Siebel CRM

- 9.3 Working with DVMs

- 9.4 Working with Cross-References

- 9.5 Handling Errors

- 9.5.1 Describing Delivered Error Notification Roles and Users

- 9.6 Configuring the Process Integration for Billing Management

10 Configuring the Process Integration for Collections Management

- 10.1 Setting Up Oracle BRM

- 10.1.1 Setting up Collection Action Names in Oracle BRM

- 10.2 Setting Up Siebel CRM

- 10.3 Working with DVMs

- 10.4 Working with Cross-References

- 10.5 Handling Errors

- 10.6 Configuring the Process Integration for Collections Management

- 10.6.1 Changing the BatchSize Default Value

A Mapping Siebel Billing Management UI Elements to Oracle BRM Customer Center

- A.1 Billing Profile and Account Balance

- A.2 Bills

- A.3 Balance Group

- A.4 Unbilled Usage

- A.5 Payments

B Composite Application Validation System Changes

- B.1 Configuration Properties for CAVS Enablement in 11.1

- B.2 Configuration Properties for CAVS Enablement in 11.2

- B.2.1 Requestor ABCS

- B.2.2 Provider ABCS

C Reintroducing Enterprise Business Services

List of Figures

- 2-1 Billing Management Business Process Flow

- 3-1 Account Balance Integration Flow

- 3-2 Siebel UI - Accounts

- 3-3 Siebel UI - Billing Profile

- 3-4 Siebel UI - Billing Profile: Balance Summary

- 3-5 Siebel UI - Balance Group: View Details

- 3-6 QueryBalanceSummary Sequence Diagram

- 3-7 QueryBalanceGroupList Sequence Diagram

- 3-8 QueryBalanceDetails Sequence Diagram

- 3-9 QueryBalanceGroupServices Sequence Diagram

- 4-1 Invoice Integration Flow

- 4-2 Siebel UI - Billing Profile: Bills

- 4-3 Siebel UI - Bills: Details

- 4-4 Siebel UI - Bills: Item Charges: Invoice Usage Allocation

- 4-5 Siebel UI - Event Details: Search

- 4-6 QueryInvoiceList Sequence Diagram

- 4-7 QueryInvoice Sequence Diagram

- 4-8 QueryInvoiceUsageAllocation Sequence Diagram

- 4-9 SearchInvoiceUsageAllocation Sequence Diagram

- 4-10 QueryInvoiceUsageAllocationResource Sequence Diagram

- 5-1 View Service Usage Flow

- 5-2 Siebel UI - Billing Profile: Service Usage Summary

- 5-3 Siebel UI - Billing Profile: Service Usage Allocation

- 5-4 QueryServiceUsage Sequence Diagram

- 5-5 QueryServiceUsageAllocation Sequence Diagram

- 5-6 SearchServiceUsageAllocation Sequence Diagram

- 5-7 QueryServiceUsageAllocationResource Sequence Diagram

- 6-1 Capturing Payments Flow

- 6-2 Siebel UI - Payments

- 6-3 Siebel UI - Capture New Payment

- 6-4 View Payment History Flow

- 6-5 CreateReceivedPayment Sequence Diagram

- 6-6 QueryReceivedPaymentList Sequence Diagram

- 6-7 SearchPayment Sequence Diagram

- 7-1 Adjustments Flow

- 7-2 Siebel UI - A/R Items

- 7-3 Siebel UI - Bill Details: Adjust

- 7-4 Siebel UI - Adjustments: Submit

- 7-5 QueryAccountBalanceAdjustment Sequence Diagram

- 7-6 CreateAccountBalanceAdjustment Sequence Diagram

- 7-7 AdjustmentSiebelCommsReqABCS

- 7-8 QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl

- 7-9 QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl

- 8-1 Collections Management Business Process Flow

- 8-2 Sync Collection Scenarios and Actions Integration Business Process Flow

- 8-3 Transformation of Data

- 8-4 Sync Collections Actions Status from Siebel CRM to Oracle BRM Sequence Diagram

- 8-5 Data Transformation Flow

- A-1 Billing Profile

- A-2 Balance Summary

- A-3 Bills

- A-4 Bill Details, Service Charges, item Charges

- A-5 Event Details

- A-6 Bill Payments

- A-7 Bills A/R Items

- A-8 Balance Group Details

- A-9 Bill Details, Service Charges, Item Charges

- A-10 Payments

- B-1 AIA Configuration Screen

List of Tables

- 8-1 Work Locations

- 9-1 Billing Management Integration - DVMs

- 9-2 Billing Management Integration - Cross-References

- 9-3 Billing Management Integration - Error Messages

- 9-4 BPEL Process Property Values - 1

- 9-5 BPEL Processes Property Values - 2

- 10-1 Collections Management - DVMs

- 10-2 Collections Management - Cross-References

- 10-3 AIAConfigurationProperties.xml - Property Values

- A-1 Billing Profile Mapping

- A-2 Balance Summary Mapping

- A-3 Bills Mapping

- A-4 Bill Details Mapping

- A-5 Service Charges Mapping

- A-6 Item Charges Mapping

- A-7 Event Details Mapping

- A-8 Bill Payments Mapping

- A-9 Bills A/R Items Mapping

- A-10 Balance Group Details Mapping

- A-11 Bill Details, Service Charges, and Item Charges Mapping

- A-12 Payments Mapping

Oracle® Application Integration Architecture

Siebel CRM Integration Pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care Implementation Guide

Release 11.2

E26496-02

May 2012

Documentation that describes the Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care pre-built integration, which integrates the billing management process between Siebel Customer Relationship Management (Siebel CRM) and Oracle Communications Billing and Revenue Management (Oracle BRM). This pre-built integration provides an integrated, real-time, and actionable view of billing data from the Siebel CRM console.

Oracle Application Integration Architecture Siebel CRM Integration Pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care Implementation Guide, Release 11.2

E26496-02

Copyright © 2001, 2012, Oracle and/or its affiliates. All rights reserved.

Primary Author:  Oracle Corporation

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

Preface

Welcome to the Siebel CRM Integration Pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care Implementation Guide.

Oracle AIA Communications Pre-Built Integrations

Oracle AIA Communications pre-built integrations 11.2 includes the following implementation guides:

- Oracle Communications Order to Cash for Siebel CRM, Oracle Order and Service Management, and Oracle Billing and Revenue Management 11.2

- Siebel CRM Integration Pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care 11.2

- Oracle Communications Billing and Revenue Management Integration Pack for Oracle Business Suite: Revenue Accounting 11.2

Common Oracle AIA Pre-Built Integration Guides

Oracle Application Integration Architecture Pre-Built Integrations 11.1 includes the following guides shared by all products delivered with this release:

- Oracle Application Integration Architecture Installation and Upgrade Guide for Pre-Built Integrations Release 11.1
This guide provides an overview of the installation process, including how to install, configure, and deploy your pre-built integrations. The steps required to upgrade your pre-built integrations to the latest release are also provided.

- Oracle Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide
This guide describes:

- How to work with and configure Session Pool Manager (SPM), which is a service in the Oracle SOA Suite web server whose primary function is to manage a pool of web server session tokens that can be reused by BPEL flows.

- How to deploy and configure the AIACompositeScheduler. This is a utility component that is used by pre-built integrations to schedule a service-oriented architecture (SOA) composite to be invoked at the specified time interval.

- Oracle Application Integration Architecture Pre-Built Integrations 11.1: Product-to-Guide Index
The Product-to-Guide index lists the guides that provide information for each product delivered in this release.

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Additional Resources

The following resources are also available:

- Oracle Application Integration Architecture Foundation Pack:
Oracle AIA Pre-Built integrations require Foundation Pack 11.1.1.6.0 to be installed. Refer to the Foundation Pack documentation library on OTN to download the Foundation Pack guides at http://download.oracle.com/docs/cd/E21764_01/aia.htm.

- Oracle Application Integration Architecture: Product-to-Guide Index:
Oracle Technology Network: http://www.oracle.com/technetwork/index.html

- Known Issues and Workarounds:
My Oracle Support: http://tinyurl.com/83q8grw

- Release Notes:
Oracle Technology Network: http://www.oracle.com/technetwork/index.html

- Documentation updates:
Oracle Technology Network: http://www.oracle.com/technetwork/index.html

What's New in This Guide for Release 11.2

We have reviewed the entire set of integration flows for the Siebel CRM integration pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care and as a result of the reviews, working with customers, and understanding the most common use cases and deployment scenarios, we have made a number of changes. The most significant of these changes is to optimize for the most common deployment scenarios. Oracle believes that these changes result in:

- Reduction in the number of artifacts required to complete the end-to-end integration flows.

- Reduction in the number of “hops” between the various participating applications and middleware components – simplifying operational management.

- Preserving the ability for more complex deployments when and where warranted.

Because of these optimization changes, for release 11.2, this guide has been updated in several ways, including the removal of enterprise business services (EBSs) from integration flows and also the way in which the Composite Application Validation System (CAVS) is enabled. (Previously you used the CAVS UI -- now you are asked to modify the AIA configuration properties file).

EBSs were introduced to simply help route to multiple provider connectors. However, the majority of our customers are using just one source and one target system for most of the integration flows. With this configuration, dynamically identifying a provider system during runtime (content-based routing) is never required and EBSs are therefore, unnecessary. The removal of EBSs, reduces one hop in each flow, reduces the number of artifacts, and in addition, maintenance and debugging becomes simpler. If required, EBSs can be reintroduced.

The following table lists the chapters and sections that have been added or changed.

Sections

Changes Made

Chapter 3 Account Balance Integration Flow

Section 3.2, "QueryBalanceSummary Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 3.3, "QueryBalanceGroupList Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 3.4, "QueryBalanceDetails Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 3.5, "QueryBalanceGroupServices Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 3.9, "Integration Services"

Section revised to update the functionality of the services delivered with the account balance integration flow.

Chapter 4: Invoice Integration Flow

Section 4.2, "QueryInvoiceList Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 4.3, "QueryInvoice Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 4.4, "QueryInvoiceUsageAllocation Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 4.5, "SearchInvoiceUsageAllocation Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 4.6, "QueryInvoiceUsageAllocationResource Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 4.10, "Integration Services"

Section revised to update the functionality of the services delivered with the invoice integration flow.

Chapter 5: Service Usage Integration Flow

Section 5.2, "QueryServiceUsage Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 5.3, "QueryServiceUsageAllocation Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 5.4, "SearchServiceUsageAllocation Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 5.5, "QueryServiceUsageAllocationResource Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 5.9, "Integration Services"

Section revised to update the functionality of the services delivered with the service usage integration flow.

Chapter 6: Payment Integration Flow

Section 6.2, "CreateReceivedPayment Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 6.3, "QueryReceivedPaymentList Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 6.4, "SearchPayment Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 6.8, "Integration Services"

Section revised to update the functionality of the services delivered with the payment integration flow.

Chapter 7: Adjustment Integration Flow

Section 7.2, "QueryAccountBalanceAdjustment Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 7.3, "CreateAccountBalanceAdjustment Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 7.7, "Integration Services"

Section revised to update the functionality of the services delivered with the adjustment integration flow.

Chapter 8: Understanding the Process Integration for Collections Management

Section 8.5, "Sync Collection Actions Status Integration Flow"

Section revised to describe new sequence of events for this flow based on removal of EBSs. The flow diagram has also been updated.

Section 8.9, "Integration Services"

Section revised to update the functionality of the services delivered with the sync collection actions status integration flow.

Chapter 9: Configuring the Process Integration for Billing Management

Section 9.6, "Configuring the Process Integration for Billing Management"

Section has been revised to document configuration properties reorganization.

Chapter 10: Configuring the Process Integration for Collections Management

Section 10.6, "Configuring the Process Integration for Collections Management"

Section has been revised to document configuration properties reorganization.

Appendix B: Composite Application Validation System Changes

Appendix B, "Composite Application Validation System Changes"

Appendix created to describe how CAVS is enabled. (Previously you used the CAVS UI -- now you are asked to modify the AIA configuration properties file).

Appendix C: Reintroducing Enterprise Business Services

Appendix C, "Reintroducing Enterprise Business Services"

Appendix created to describe how customers can reintroduce EBSs if they need content-based routing.

1 Siebel CRM Integration Pack for Oracle Communications BRM: Agent Assisted Billing Care Overview

The Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care pre-built integration integrates the billing management process between Siebel Customer Relationship Management (Siebel CRM) and Oracle Communications Billing and Revenue Management (Oracle BRM) to empower customer care agents and improve customer service value by providing an integrated, real-time, and actionable view of billing data from the Siebel CRM console.

For communications service providers (CSPs) to deliver a superior customer experience, customer care agents must have easy access to accurate and complete customer billing and service information to increase first-call resolution rates, while reducing costs. CSPs also require a single solution to improve agent productivity and minimize the number of applications that agents must use and learn. With Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care, companies of all sizes can provide unparalleled service and vastly reduce integration cost and complexity.

Connecting Siebel CRM with Oracle BRM provides real-time access to critical billing information through a single point of entry, Siebel CRM. Agents can gain real-time access to customer billing information, including four tiers of customer account balance data, three tiers of invoice data, payment history, and adjustment history without having to toggle between multiple applications. As a result, the Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care pre-built integration helps service providers reduce operating costs by streamlining and automating billing management processes and reducing the potential for error.

The Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care pre-built integration consists of these three process integrations:

- Process Integration for Billing Management

- Process Integration for Customer Management

- Process Integration for Collections Management

1.1 Process Integration for Billing Management

The process integration (PI) for billing management integrates the billing management process between Siebel CRM and Oracle BRM. The PI enables Siebel CRM to be used as the single interface to access all customer-related billing information, including data that is mastered and maintained within the Oracle BRM system. This PI includes support for the following key processes that can be performed from Siebel CRM:

- Real-time view of account and customer balance summaries, balance groups, and balance details

- Real-time display of unbilled usage information

- View of invoice details

- View of payment and adjustment history

- Capturing payments for an invoice and sending to Oracle BRM for processing

- Capturing new adjustment requests and sending to Oracle BRM for processing

For more information, see Part I, "Understanding the Delivered Integrations".

1.2 Process Integration for Customer Management

The process integration for customer management enables the synchronization of customer information between Siebel CRM and Oracle BRM. This PI provides two integration flows:

- Create or sync new customer account, which interfaces customers to Oracle BRM (performed during the order management processing flow).

- Update customer account integration flow, which updates account profile information (such as address, name, and contact) from Siebel CRM to Oracle BRM.

For information about the process integration for Customer Management, see the Oracle Application Integration Architecture Oracle Communications Order to Cash Integration Pack Implementation Guide for Siebel CRM, Oracle Order and Service Management, and Oracle Billing and Revenue Management.

1.3 Process Integration for Collections Management

The process integration for collections management provides synchronization of collection actions (based on the specified collection scenarios) defined in Oracle BRM to Siebel CRM, and administration of these collection actions and credit alerts.

For more information, see Chapter 8, "Understanding the Process Integration for Collections Management".

Part I

Understanding the Delivered Integrations

Part I includes the following chapters:

- Chapter 2, "Understanding the Process Integration for Billing Management"

- Chapter 3, "Account Balance Integration Flow"

- Chapter 4, "Invoice Integration Flow"

- Chapter 5, "Service Usage Integration Flow"

- Chapter 6, "Payment Integration Flow"

- Chapter 7, "Adjustment Integration Flow"

- Chapter 8, "Understanding the Process Integration for Collections Management"

2 Understanding the Process Integration for Billing Management

This chapter provides an overview of the process integration for billing management and discusses the billing management business process flow. Also discussed are the solution assumptions and constraints.

This chapter includes the following sections:

- Section 2.1, "Process Integration for Billing Management Overview"

- Section 2.2, "Billing Management Business Process Flow"

- Section 2.3, "Solution Assumptions and Constraints"

2.1 Process Integration for Billing Management Overview

The Siebel CRM Integration Pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care provides these process integrations:

- Billing management.

- Customer management.

- Collections management.

The Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care PIP also includes additional touch points between Siebel Customer Relationship Management (Siebel CRM) and Oracle Billing and Revenue Management (Oracle BRM) that are required to enable this process.

The Oracle Communications Order to Cash PIP for Siebel CRM, Oracle Service and Order Management, and Oracle Billing and Revenue Management is a prerequisite for the process integration for billing management.

The process integration for billing management enables a customer service representative (CSR) to retrieve account balances, invoices, and unbilled data at a header, summary, and detail level. The PIP also enables a CSR to adjust and pay invoices.

After a service is activated, usage events (for example, a phone call, text message, or a data session) are sent from the communications network to the billing system. These events are rated, bills are generated, and then bills are sent to customers.

The service cycle of the process integration for billing management starts when customers call to question the content of their bills, query on unbilled usage, make payments, or file disputes. Billing information must be sent from Oracle BRM to Siebel CRM so that CSRs can respond to billing questions. Payment information and bill dispute requests must then be sent from Siebel CRM to Oracle BRM.

Most of these billing integration touch points do not replicate the billing data in Siebel CRM. Instead, the integration retrieves the billing data on demand from Oracle BRM and displays it within Siebel CRM. For this integration, Oracle supports Siebel CRM and Oracle BRM as the participating applications; the design does consider that customers may have multiple billing systems (all Oracle BRM systems) and enables them to use routing rules to retrieve billing data from other billing systems.

The process integration for billing management consists of these integration flows and their respective integration scenarios:

- The Account Balance integration flow provides the QueryBalanceGroupList, QueryBalanceGroupServices, QueryBalanceSummary, and QueryBalanceDetails integration scenarios.

- The Invoice integration flow provides the QueryInvoiceList, QueryInvoice, QueryInvoiceUsageAllocation, SearchInvoiceUsageAllocation, and QueryInvoiceUsageAllocationResource integration scenarios.

- The Service Usage integration flow provides the QueryServiceUsage, QueryServiceUsageAllocation, SearchServiceUsageAllocationResource, and QueryServiceUsageAllocationsResource integration scenarios.

- The Payment integration flow provides the CreateReceivedPayment, QueryReceivedPaymentList, and SearchPayment integration scenarios.

- The Adjustment integration flow provides the QueryAccountBalanceAdjustment and CreateAccountBalanceAdjustment integration scenarios.

2.2 Billing Management Business Process Flow

Figure 2-1 illustrates the overall flow for the process integration for billing management.

Figure 2-1 Billing Management Business Process Flow

2.3 Solution Assumptions and Constraints

These are the assumptions and constraints for the process integration for billing management.

1. One billing profile in Siebel CRM is associated with a single billing system.

2. Billing data is not replicated in Siebel CRM. Rather, it is retrieved on demand from the billing system.

3. In cases where the deployment topology has multiple billing systems, each Siebel billing profile should map 1:1 with a billing system (assumption stated in #1). This is because the integration does not have any provisions to converge or consolidate billing data between multiple billing systems. If this premise is ignored, the solution cannot guarantee fetching the billing data consistently from the same billing system.
For more information about configuring multiple billing systems, see the Oracle Application Integration Architecture Oracle Communications Order to Cash Integration Pack Implementation Guide for Siebel CRM, Oracle Order and Service Management, and Oracle Billing and Revenue Management, "Appendix F: Configuring Multiple Oracle BRM Instances for Communications PIPs"

4. Monetary and nonmonetary adjustments within a single adjustment request from Siebel CRM are not possible.

5. A single adjustment request can have adjustments from only one level and not across multiple levels such as header, item, and event.

6. Adjustment requests always originate in Siebel CRM and are sent to Oracle BRM for processing through the process integration.

7. Adjustment requests that are absolute and percentage value are supported at bill/header and event level only. Adjustment request of only absolute value are supported at the item level.

8. Invoice adjustment requests are applicable at header, item, and event levels.

9. Account-level adjustments are not supported.

10. Unbilled adjustments are applicable only at the event level.

11. Payment validation occurs in the billing system.

12. Create Payments is used for making one-time payments and supports credit card and automatic debit payment methods.

13. Viewing an invoice image in Siebel CRM is not supported for this release.

3 Account Balance Integration Flow

This chapter provides an overview of the account balance integration flows and discusses Siebel Customer Relationship Management (Siebel CRM) and Oracle Billing and Revenue Management (Oracle BRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

- Section 3.1, "Account Balance Integration Flows Overview"

- Section 3.2, "QueryBalanceSummary Integration Flow"

- Section 3.3, "QueryBalanceGroupList Integration Flow"

- Section 3.4, "QueryBalanceDetails Integration Flow"

- Section 3.5, "QueryBalanceGroupServices Integration Flow"

- Section 3.6, "Oracle BRM Interfaces"

- Section 3.7, "Siebel CRM Interfaces"

- Section 3.8, "Industry Oracle AIA Components"

- Section 3.9, "Integration Services"

3.1 Account Balance Integration Flows Overview

The account balance integration between Siebel CRM and Oracle BRM supports the following integration flows:

- QueryBalanceSummary enables a customer service representative (CSR) to view an account billing profile balance summary in Siebel CRM.

- QueryBalanceGroupList enables a CSR to view the list of balance groups under an account billing profile.

- QueryBalanceDetails enables a CSR to view balance details under a balance group.

- QueryBalanceGroupServices enables a CSR to view services under a balance group.

The account balance integration enables the CSR to retrieve balance information from Oracle BRM. The CSR can obtain balance information at a summary or detail level. They can also query a list of balance groups for a selected billing profile.

After the CSR obtains the balance group information from Oracle BRM, they can navigate and query additional details, such as monetary and nonmonetary balances, credit limits, and validity dates.

When the CSR accesses the Siebel Billing Profile screen, a request is made from Siebel CRM to retrieve an account balance summary. When the CSR clicks the Balance Group tab, a call is made to fetch the list of balance groups. When the CSR clicks the view detail button for a balance group, the corresponding balance group detail data appears on the Balance Group detail applet.

With the add-on support for viewing account balance and other billing data for service accounts, the account balance integration now enables the CSR to retrieve balance and billing information for the service account (in addition to the billing account) from Oracle BRM.

From the Account Summary view in Siebel CRM, the CSR can retrieve both the account balance information of the billing (paying) account and the service (nonpaying) account. The click stream action determines which account billing information is retrieved from the billing system. By default there are the following three navigation paths available:

- From the Billing Account Summary page, navigate to the Siebel Billing Portal page for the billing account.
If the intent is to see the billing account's billing data (account balance, bills, unbilled usage, adjustments and payments), then the user must use the Billing Profile link under the Billing Profile applet.

In cases were a single billing profile is used to pay for both the billing account and service account(s) services, then the billing data that is displayed using this navigation option contains the consolidated billing information of account balance, bills, unbilled usage, adjustments and payments across all accounts that are tied to this billing profile.

Alternatively, if different parent billing profiles are used to pay for self and other service accounts, then clicking a specific billing profile displays the billing data of account(s) that are tied to that billing profile.

- From the Billing Account Summary page, navigate to the Siebel Billing Portal page for one service account.
If the intent is to see a particular service account's billing data then the user must use the Billing Profile link under the Billing Items applet.

The user must identify the correct billing item that is mapped to the service account for which the billing data is to be seen. Billing data like account balance, bills, unbilled usage and adjustments that are specific to the selected service account can be viewed using this navigation option.

- From the Service Account Summary page, navigate to the Siebel Billing Portal page for the service account.
If the intent is to see the billing data of the service account that is currently accessed in Siebel CRM, the user must use the Billing Profile link under the Installed Asset applet.

Clicking on any of the Billing Profile links under this applet navigates the user to the service account's billing portal screen. Billing data like account balance, bills, unbilled usage, and adjustments that are specific to a service account can be viewed using this navigation option.

Figure 3-1 illustrates the account balance integration flow.

Figure 3-1 Account Balance Integration Flow

To view account balance information for an account using the billing profile portal screen in Siebel CRM:

Note:

Siebel UI screenshots are for reference only and may differ from actual screens.

1. Navigate to the Accounts screen and query an account, as shown in Figure 3-2.

Figure 3-2 Siebel UI - Accounts

2. Scroll down to the Billing Profile applet for this account (Figure 3-3) and click the Billing Profile Name link.

Figure 3-3 Siebel UI - Billing Profile

You can now view the account's billing profile portal screen which has the applet with the balance summary for this account, as shown in Figure 3-4.

Figure 3-4 Siebel UI - Billing Profile: Balance Summary

3. Click the Balance Group tab to view the list of balance groups under an account billing profile. Click View Detail to view the corresponding balance group detail on the Balance Detail applet, as shown in Figure 3-5.

Figure 3-5 Siebel UI - Balance Group: View Details

For more information about the mapping of Siebel CRM elements to Oracle BRM elements, see Appendix A, "Mapping Siebel Billing Management UI Elements to Oracle BRM Customer Center."

3.2 QueryBalanceSummary Integration Flow

This integration flow uses the following interfaces:

- AccountBalanceSiebelCommsReqABCS with operation QueryBalanceSummary

- QueryBalanceSummarySiebelCommsReqABCSImpl

- QueryCustomerPartyListBRMCommsProvABCSImpl

Figure 3-6 illustrates the QueryBalanceSummary integration scenario:

Figure 3-6 QueryBalanceSummary Sequence Diagram

When you initiate the QueryBalanceSummary process, the following events occur:

1. In Siebel CRM, a user navigates to the Accounts screen, queries an account, and clicks a Billing Profile for the account.
This opens up the Billing Profile BRM screen, and a web service call is made to query the balance summary from the billing system.

2. Navigating to the Billing BRM screen invokes AccountBalanceSiebelCommsReqABCS web service with the QueryBalanceSummary method, which in turn calls the AccountBalanceSiebelCommsReqABCS with operation QueryBalanceSummary.
AccountBalanceSiebelCommsReqABCS is a generic Siebel Account Balance interface service with several operations defined on the application business message (ABM).

3. Invoking AccountBalanceSiebelCommsReqABCS with operation QueryBalanceSummary routes the QueryBalanceSummaryReqMsg to the QueryBalanceSummarySiebelCommsReqABCSImpl.

4. The QueryBalanceSummarySiebelCommsReqABCSImpl first transforms the QueryBalanceSummaryReqMsg into QueryCustomerPartyListReqMsgEBM and routes the QueryCustomerPartyListReqMsg to the appropriate billing systems.
As delivered, QueryCustomerPartyListReqMsg is routed to the QueryCustomerPartyListBRMCommsProvABCSImpl.

5. QueryCustomerPartyListBRMCommsProvABCSImpl transforms QueryCustomerPartyListReqMsg into the input of PCM_OP_AR_GET_ACCT_BAL_SUMMARY and calls the opcode PCM_OP_AR_GET_ACCT_BAL_SUMMARY.

6. QueryCustomerPartyListBRMCommsProvABCSImpl then transforms the application programming interface (API) output PCM_OP_AR_GET_ACCT_BAL_SUMMARY _outputFlist into enterprise business message (EBM) QueryCustomerPartyListRespMsg and returns it to QueryBalanceSummarySiebelCommsReqABCSImpl

7. QueryBalanceSummarySiebelCommsReqABCSImpl transforms the QueryCustomerPartyListRespMsg into QueryBalanceSummaryRespMsg, which is returned to the AccountBalanceSiebelCommsReqABCS.

8. AccountBalanceSiebelCommsReqABCS returns the QueryBalanceSummarySiebelMsg to the calling Siebel web service AccountBalanceSiebelCommsReqABCS.

9. The response is then written to the Siebel Balance Summary virtual business component (VBC) for the user.

3.3 QueryBalanceGroupList Integration Flow

This integration uses the following service interfaces:

- AccountBalanceSiebelCommsReqABCS with operation QueryBalanceGroupList

- QueryBalanceGroupListSiebelCommslReqABCSImpl

- QueryCustomerPartyListBRMCommsProvABCSImpl

Figure 3-7 displays the QueryBalanceGroupList integration scenario.

Figure 3-7 QueryBalanceGroupList Sequence Diagram

When you initiate the QueryBalanceDetails process, the following events occur:

1. In Siebel CRM, a user navigates to the Accounts screen, queries an account, and clicks a billing profile for the account.
This displays the Billing Profile BRM screen. On the Billing Profile screen, when the user clicks the Balance Group tab, a web service call is made to query the complete list of balance groups for that account billing profile.

2. Navigating to the Billing BRM screen and clicking the Balance Group tab invokes the AccountBalanceSiebelCommsReqABCS web service, which in turn invokes the Siebel Account Balance Interface service AccountBalanceSiebelCommsReqABCS with operation QueryBalanceGroupList.
AccountBalanceSiebelCommsReqABCS is a generic Oracle AIA Application Business Connector Service (ABCS) interface service with several operations on the Siebel ABM.

3. Invoking AccountBalanceSiebelCommsReqABCS with operation QueryBalanceGroupList routes the QueryBalanceGroupListReqMsg to the QueryBalanceGroupListSiebelCommsReqABCSImpl.

4. The QueryBalanceGroupListSiebelCommslReqABCSImpl transforms the QueryBalanceGroupListReqMsg into QueryCustomerPartyListReqMsgEBM and routes the QueryCustomerPartyListReqMsg to the appropriate billing system.
As delivered, QueryCustomerPartyListReqMsg is routed to the QueryCustomerPartyListBRMCommsProvABCSImpl.

5. QueryCustomerPartyListBRMCommsProvABCSImpl checks the Query Criteria code. If it is QueryBalanceGroupList, the QueryInvoiceListReqMsg is transformed into PCM_OP_BAL_GET_ACCT_BILLINFO_inputflist.
This opcode call returns the list of BILLINFO and AR_BILLINFO of that account.

6. QueryCustomerPartyListBRMCommsProvABCSImpl first checks the Query Criteria code. If it is QueryBalanceGroupList, then it transforms QueryCustomerPartyListReqMsg into the input of PCM_OP_BAL_GET_ACCT_BAL_GRP_AND_SVC and then invokes the BRM API PCM_OP_BAL_GET_ACCT_BAL_GRP_AND_SVC to query the list of balance groups of the account billing profile.

7. From the response of PCM_OP_BAL_GET_ACCT_BILLINFO opcode, the appropriate BILLINFO and AR_BILLINFO are picked.
QueryCustomerPartyListReqMsg is transformed into the input of PCM_OP_BAL_GET_ACCT_BAL_GRP_AND_SVC and calls the Oracle BRM opcode PCM_OP_BAL_GET_ACCT_BAL_GRP_AND_SVC. Several balance groups can be in the billing system for an account billing profile. Based on the value of n passed from Siebel CRM, the API returns <=n number of balance groups.

8. The list of balance groups from the Oracle BRM output list is transformed into QueryCustomerPartyListRespMsg and returned to the QueryBalanceGroupListSiebelCommslReqABCSImpl service.

9. QueryBalanceGroupListSiebelCommslReqABCSImpl then transforms the response messages into QueryBalanceGroupListRespMsg, which is returned to the AccountBalanceSiebelCommsReqABCS.

10. AccountBalanceSiebelCommsReqABCS returns the QueryBalanceGroupListRespMsg to the calling Siebel web service AccountBalanceSiebelCommsReqABCS.

11. The response message is then written to the Siebel Balance Group VBCs for the user.

3.4 QueryBalanceDetails Integration Flow

This integration uses the following service interfaces:

- AccountBalanceSiebelCommsReqABCS with operation QueryBalanceDetails

- QueryBalanceDetailsSiebelCommsReqABCSImpl

- QueryCustomerPartyListBRMCommsProvABCSImpl

Figure 3-8 displays the QueryBalanceDetails integration scenario.

Figure 3-8 QueryBalanceDetails Sequence Diagram

When you initiate the QueryBalanceDetails process, the following events occur:

1. Siebel web service calls AccountBalanceSiebelCommsReqABCS (operation - QueryBalanceDetails) with QueryBalanceDetailsReqMsg ABM comprising account ID, billing profile ID, and balance group ID.

2. AccountBalanceSiebelCommsReqABCS invokes QueryBalanceDetailsSiebelCommsReqABCSImpl with QueryBalanceDetailsReqMsg ABM.

3. QueryBalanceDetailsSiebelCommsReqABCSImpl transforms QueryBalanceGroupListReqMsg ABM to QueryCustomerPartyListReqMsgEBM and sets the value of the field, Query Criteria Code, to Query Balance Details.

4. QueryBalanceDetailsSiebelCommsReqABCSImpl then routes the QueryCustomerPartyListReqMsgEBM to QueryCustomerPartyListBRMCommsProvABCSImpl.

5. QueryCustomerPartyListBRMCommsProvABCSImpl ensures that the value in Query Criteria Code is Query Balance Details and transforms QueryCustomerPartyListReqMsgEBM into Oracle BRM ABM and calls the Oracle BRM API, PCM_OP_BAL_GET_BALANCES.

6. PCM_OP_BAL_GET_BALANCES takes balance group ID as the input and returns the balance and balance details for that balance group.

7. QueryCustomerPartyListBRMCommsProvABCSImpl transforms the Oracle BRM output to QueryCustomerPartyListResMsgEBM.

8. QueryCustomerPartyListResMsgEBM goes as a response to QueryBalanceDetailsSiebelCommsReqABCSImpl.

3.5 QueryBalanceGroupServices Integration Flow

This integration uses the following service interfaces:

- AccountBalanceSiebelCommsReqABCS

- QueryBalanceGroupServicesSiebelCommsReqABCSImpl

- QueryInstalledProductListBRMCommsProvABCSImpl

Figure 3-9 displays the QueryBalanceGroupServices integration scenario.

Figure 3-9 QueryBalanceGroupServices Sequence Diagram

When you initiate the QueryBalanceGroupServices process, the following events occur:

1. Siebel web service calls AccountBalanceSiebelCommsReqABCS using operation QueryBalanceGroupServices with QueryBalanceGroupServicesReqMsg ABM comprising account ID, billing profile ID, and balance group ID.

2. AccountBalanceSiebelCommsReqABCS invokes QueryBalanceGroupServicesSiebelCommsReqABCSImpl with QueryBalanceGroupServicesReqMsg ABM.

3. QueryBalanceGroupServicesSiebelCommsReqABCSImpl transforms QueryBalanceGroupServicesReqMsg ABM to QueryInstalledProductListReqMsgEBM and sets the value of the field, Query Criteria Code, to Query Balance Group Services.

4. QueryBalanceGroupServicesSiebelCommsReqABCSImpl routes QueryInstalledProductListReqMsgEBM to QueryInstalledProductListBRMCommsProvABCSImpl.
This service:

1. Transforms QueryInstalledProductListReqMsgEBM to Oracle BRM ABM and calls the Oracle BRM API, PCM_OP_SEARCH, which takes a query statement involving balance group ID as input and returns the list of service IDs for that balance group.

2. Calls the Oracle BRM API, PCM_OP_SUBSCRIPTION_GET_PURCHASED_OFFERINGS for each of the service IDs queried, which accepts a service ID as input and returns the list of product IDs associated with that service.

3. Calls the Oracle BRM API, PCM_OP_READ_FLDS for each of the product IDs queried, which takes a product ID as input and returns the product details for that ID.

5. QueryInstalledProductListBRMCommsProvABCSImpl merges and transforms the Oracle BRM output to QueryInstalledProductListResMsg enterprise business message (EBM).

6. QueryInstalledProductListResMsgEBM goes as a response to QueryBalanceGroupServicesSiebelCommsReqABCSImpl.

3.6 Oracle BRM Interfaces

The QueryBalanceSummary integration flow uses this opcode:

- PCM_OP_AR_GET_ACCT_BAL_SUMMARY

The QueryBalanceGroupList integration flow uses these opcodes:

- PCM_OP_AR_GET_ACCT_BILLS

- PCM_OP_BAL_GET_ACCT_BAL_GRP_AND_SVC

The QueryBalanceDetails integration flow uses this opcode:

- PCM_OP_BAL_GET_BALANCES

The QueryBalanceGroupServices integration flow uses these opcodes:

- PCM_OP_SEARCH

- PCM_OP_SUBSCRIPTION_GET_PURCHASED_OFFERINGS

- API, PCM_OP_READ_FLDS

For more information, see See Oracle Communications Billing and Revenue Management Opcode Flist Reference.

3.7 Siebel CRM Interfaces

The account balance integration flow uses this Siebel CRM interface:

- AccountBalanceSiebelCommsReqABCS

For more information, see the Siebel Order Management Guide Addendum for Communications, "Web Services Reference."

3.8 Industry Oracle AIA Components

The account balance integration uses the following delivered enterprise business objects (EBOs) and enterprise business messages (EBMs):

- CustomerPartyEBO

- InstalledProductEBO

- QueryCustomerPartyListEBM

- QueryCustomerPartyListResponseEBM

- QueryInstalledProductListEBM

- QueryInstalledProductListResponseEBM

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located under the Metadata Services (MDS) repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/

The industry enterprise business service (EBS) WSDL files are located under the MDS repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/

For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in Oracle Enterprise Repository (OER).

For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.

3.9 Integration Services

These services are delivered with the account balance integration:

- AccountBalanceSiebelCommsReqABCS

- QueryBalanceSummarySiebelCommsReqABCSImpl

- QueryCustomerPartyListBRMCommsProvABCSImpl

- QueryBalanceGroupListSiebelCommsReqABCSImpl

- QueryBalanceDetailsSiebelCommsReqABCSImpl

- QueryBalanceGroupServicesSiebelCommsReqABCSImpl

- QueryInstalledProductListBRMCommsProvABCSImpl

3.9.1 AccountBalanceSiebelCommsReqABCS

AccountBalanceSiebelCommsReqABCS mediates calls between the clients and the provider. AccountBalanceSiebelCommsReqABCS exposes the following operations related to Account Balance integration on the Siebel ABM.

- QueryBalanceSummary:

- Routes QueryBalanceSummaryReqMsg to the requester implementation service

- Routes QueryBalanceSummaryRespMsg to the requester

- QueryBalanceDetails:

- Routes QueryBalanceDetailsReqMsg to the requester implementation service

- Routes QueryBalanceDetailsRespMsg to the requester

- QueryBalanceGroupList:

- Routes QueryBalanceGroupListReqMsg to the requester implementation service

- Routes QueryBalanceGroupListRespMsg to the requester

- QueryBalanceGroupServices:

- Routes QueryBalanceGroupServicesReqMsg to the requester implementation service

- Routes QueryBalanceGroupServicesRespMsg to the requester

3.9.2 QueryBalanceSummarySiebelCommsReqABCSImpl

QueryBalanceSummarySiebelCommsReqABCSImpl transforms the Siebel message into QueryBalanceSummaryEBM and calls the provider to query the balance summary response from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

3.9.3 QueryCustomerPartyListBRMCommsProvABCSImpl

QueryCustomerPartyListBRMCommsProvABCSImpl transforms the QueryBalanceSummaryEBM into Oracle BRM API input format and calls the API to query the balance summary output from the billing system. It then transforms the output from the API back to a CustomerPartyBalanceEBM message and returns it to the requestor.

3.9.4 QueryBalanceGroupListSiebelCommslReqABCSImpl

The QueryBalanceGroupListSiebelCommslReqABCSImpl transforms the QueryBalanceGroupListReqMsg into QueryCustomerPartyListReqMsgEBM.

3.9.5 QueryBalanceDetailsSiebelCommsReqABCSImpl

The QueryBalanceDetailsSiebelCommsReqABCSImpl is a Business Process Execution Language (BPEL) process that transforms the Siebel message into the QueryBalanceDetailsEBM and calls the provider to query the balance group and balance group balance details response from Oracle BRM. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

3.9.6 QueryBalanceGroupServicesSiebelCommsReqABCSImpl

QueryBalanceGroupServicesSiebelCommsReqABCSImpl transforms the Siebel message into QueryInstalledProductListEBM and calls the provider to query the balance group list from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

3.9.7 QueryInstalledProductListBRMCommsProvABCSImpl

QueryInstalledProductListBRMProvABCSImpl transforms QueryInstalledProductListReqMsgEBM to Oracle BRM ABM and calls the Oracle BRM API, PCM_OP_SEARCH, which takes a query statement involving balance group ID as input and returns the list of service IDs for that balance group.

For each of the service IDs queried, QueryInstalledProductListBRMProvABCSImpl calls the Oracle BRM API, PCM_OP_SUBSCRIPTION_GET_PURCHASED_OFFERINGS, which takes a service ID as input and returns the list of product IDs associated with that service.

For each of the product IDs queried, QueryInstalledProductListBRMProvABCSImpl calls the Oracle BRM API, PCM_OP_READ_FLDS, which takes a product ID as input and returns the product details for that ID.

4 Invoice Integration Flow

This chapter provides an overview of the invoice integration flows and discusses Siebel Customer Relationship Management (Siebel CRM) and Oracle Billing and Revenue Management (Oracle BRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services

This chapter includes the following sections:

- Section 4.1, "Invoice Integration Overview"

- Section 4.2, "QueryInvoiceList Integration Flow"

- Section 4.3, "QueryInvoice Integration Flow"

- Section 4.4, "QueryInvoiceUsageAllocation Integration Flow"

- Section 4.5, "SearchInvoiceUsageAllocation Integration Flow"

- Section 4.6, "QueryInvoiceUsageAllocationResource Integration Flow"

- Section 4.7, "Oracle BRM Interfaces"

- Section 4.8, "Siebel CRM Interfaces"

- Section 4.9, "Industry Oracle AIA Components"

- Section 4.10, "Integration Services"

4.1 Invoice Integration Overview

The invoice integration between Siebel CRM and Oracle BRM supports the following integration scenarios:

- QueryInvoiceList enables a customer service representative (CSR) to view a list of invoices for an account billing profile in Siebel CRM.

- QueryInvoice enables a CSR to view invoice details in Siebel CRM.

- QueryInvoiceUsageAllocation enables a CSR to view invoice event details (call detail (CDR) records) in Siebel CRM.

- SearchInvoiceUsageAllocation enables a CSR to search invoice event detail records (CDR records) in Siebel CRM.

- QueryInvoiceUsageAllocationResource enables a CSR to view nonmonetary resource balance details in Siebel CRM.

Invoices are generated on a periodic basis by Oracle BRM after a bill cycle. An invoice, when calculated, does not change. An invoice usually has three segments: Header, Summary, and Details. The CSR can resolve most bill inquiries by viewing the Header and Summary of an invoice. The View Invoice feature enables the CSR to view invoice data at any of these levels: header, summary, and detail. The integration between the Siebel CRM and billing systems must present the n most current invoices in the Siebel CRM system. Additionally, the invoice header, summary, and details are never replicated from Oracle BRM to Siebel CRM. Instead they must be retrieved on demand from Oracle BRM to Siebel CRM.

When the CSR clicks the Bills tab of the Billing Profile screen, a process is started that brings the latest n invoices from the billing system. They can make n configurable in Siebel CRM based on business requirements. The value of n is passed to the billing system when a request is made to it.

When a CSR navigates to a retrieved invoice, the Bill Detail view appears. This starts another process that gets the invoice or bill header and item data, and displays it on the header and items applet of the Bill Detail view. In the billing system, two application programming language (APIs) exist that calls the invoice header and items data. However, a single request from Siebel CRM invokes these two API calls and brings a single hierarchical message back to Siebel CRM. While retrieving invoice data, the process does not return the payment and A/R items data for the selected invoice. So when a CSR clicks the Payment tab on the Bill Detail view, a separate web service call is made to retrieve payment data for the selected invoice or bill. Similarly, when a CSR clicks the A/R items tab, A/R items data for the selected invoice is retrieved and displayed.

Additionally, the integration process aggregates the item charge information to the services level so that service charges can be displayed in the Service Charges applet.

Finally, for the CSRs to obtain the Item Details record, the CSRs can select an invoice item and then click the Net Amount link associated with the item charge. This triggers another request to the billing system to send the item or event details record. Because this item detail data is generally large, an option is provided to the CSRs to limit the data retrieved using search criteria.

Note:

The date and time information of the event details and CDR, which is displayed in the Siebel UI, is specific to the time zone from where the event originated.

Figure 4-1 illustrates the invoice integration flow.

Figure 4-1 Invoice Integration Flow

To view invoice information for an account in the billing profile in Siebel CRM:

Note:

Siebel UI screenshots are for reference only and may differ from actual screens.

1. Navigate to the Accounts screen and query an account. Scroll down to the Billing Profile applet for this account and click the Billing Profile Name link.

2. Click the Bills tab to view a list of invoices, as shown in Figure 4-2.

Figure 4-2 Siebel UI - Billing Profile: Bills

3. Click the Bill Number link to view the details for that invoice, as shown in Figure 4-3.

Figure 4-3 Siebel UI - Bills: Details

4. Go to the Item Charges applet and click the Net Amount link to view the invoice usage allocation (CDRs) for that item, as shown in Figure 4-4.

Figure 4-4 Siebel UI - Bills: Item Charges: Invoice Usage Allocation

5. Click the Search tab to search invoice event detail records, as shown in Figure 4-5.

Figure 4-5 Siebel UI - Event Details: Search

6. In the Event Details, click View Details to query the resource impact details (non-monetary charges, for example free minutes, and so on) for an event from the billing system.

For more information about the mapping of Siebel CRM elements to Oracle BRM elements, see Appendix A, "Mapping Siebel Billing Management UI Elements to Oracle BRM Customer Center."

4.2 QueryInvoiceList Integration Flow

This integration flow uses the following interfaces:

- InvoiceSiebelCommsReqABCS with operation QueryInvoiceList

- QueryInvoiceListSiebelCommsReqABCSImpl

- QueryInvoiceListBRMCommsProvABCSImpl

Figure 4-6 illustrates the QueryInvoiceList integration scenario.

Figure 4-6 QueryInvoiceList Sequence Diagram

When you initiate the QueryInvoiceList process, the following events occur:

1. In Siebel CRM, a user navigates to the Accounts screen, queries an account, and clicks a billing profile for the account.
This displays the Billing Profile BRM screen, Bills tab, a web service call is made to query the list of n invoices for that billing profile. Many invoices may be in Oracle BRM, but the number n of invoices to be fetched is sent from Siebel CRM as part of the request message and <=n number of invoices are returned from Oracle BRM. The default values of invoices (n) queried depends on the configuration in Siebel Integration Object CMU Request Billing Profile IO integration component Com Invoice Profile field Maximum Number Of Records.

2. Navigating to the Invoice applet in the Billing Profile BRM screen invokes outbound web service InvoiceSiebelCommsReqABCS, which in turn calls the InvoiceSiebelCommsReqABCS with operation QueryInvoiceList.
InvoiceSiebelCommsReqABCS is a generic Invoice interface service with several operations defined on the Invoice application business message (ABM).

3. Invoking InvoiceSiebelCommsReqABCS with operation QueryInvoiceList routes the QueryInvoiceListReqMsg to the QueryInvoiceListSiebelCommsReqABCSImpl.

4. The QueryInvoiceListSiebelCommsReqABCSImpl first transforms the QueryInvoiceListReqMsg into QueryInvoiceListRequest enterprise business message (EBM) and routes the QueryInvoiceListReqMsg to the appropriate billing systems.
As delivered, QueryInvoiceListReqMsg is routed to the QueryInvoiceListBRMCommsProvABCSImpl.

5. QueryInvoiceListBRMCommsProvABCSImpl first checks the Query Criteria code.
If it is Query Invoice List, QueryInvoiceListReqMsg is transformed into PCM_OP_BAL_GET_ACCT_BILLINFO_inputflist. This opcode call returns the list of BILLINFO and AR_BILLINFO of that account.

6. From the response of PCM_OP_BAL_GET_ACCT_BILLINFO opcode, the appropriate BILLINFO and AR_BILLINFO are picked.
QueryInvoiceListReqMsg is transformed into the input of PCM_OP_AR_GET_ACCT_BILLS and calls the BRM opcode PCM_OP_AR_GET_ACCT_BILLS. Many invoices may be in the billing system for an account billing profile. Based on the value of n passed from Siebel CRM, the application programming interface (API) returns <=n number of invoices.

7. QueryInvoiceListBRMCommsProvABCSImpl then transforms the API output PCM_OP_AR_GET_ACCT_BILLS_RespMsg into EBM QueryInvoiceListRespMsg and returns it to QueryInvoiceListSiebelCommsReqABCSImpl.

8. QueryInvoiceListSiebelCommsReqABCSImpl then transforms the QueryInvoiceListRespMsg into QueryInvoiceListRespMsg, which is returned to the InvoiceSiebelCommsReqABCS.

9. InvoiceSiebelCommsReqABCS returns the QueryInvoiceListRespMsg to the calling Siebel web service InvoiceSiebelCommsReqABCSService.

10. The system then writes the list of bills to the Siebel Invoice virtual business component (VBC) for the user.

4.3 QueryInvoice Integration Flow

This integration flow uses the following interfaces:

- InvoiceSiebelCommsReqABCS with operation QueryInvoice

- QueryInvoiceSiebelCommsReqABCSImpl

- QueryInvoiceListBRMCommsProvABCSImpl

Figure 4-7 illustrates the QueryInvoice integration scenario.

Figure 4-7 QueryInvoice Sequence Diagram

When you initiate the QueryInvoice process, the following events occur:

1. In Siebel CRM, navigate to the Accounts screen, query an account, and click a Billing Profile for the account.
This displays the Billing Profile screen. Click the Bills tab and drill-down on the Bill Number to call the query invoice information (header, service charges, and items) from the billing system.

2. The InvoiceSiebelCommsReqABCS with the operation QueryInvoice is called.
The InvoiceSiebelCommsReqABCS is a generic Siebel invoice interface service with several operations defined on the Invoice EBO.

3. The InvoiceSiebelCommsReqABCS with the operation QueryInvoice routes the QueryInvoiceReqMsg to the QueryInvoiceSiebelCommsReqABCSImpl.

4. The QueryInvoiceSiebelCommsReqABCSImpl transforms the QueryInvoiceReqMsg into the Invoice EBM and routes the QueryInvoiceListReqMsg to the appropriate billing system.
As delivered, QueryInvoiceListReqMsg is routed to the QueryInvoiceListBRMCommsProvABCSImpl.

5. The QueryInvoiceListBRMCommsProvABCSImpl first checks the Query Criteria code. If it is Query Invoice, it then transforms QueryInvoiceListReqMsg into the input of PCM_OP_BAL_GET_ACCT_BILLINFO_inputFlist and invokes PCM_OP_BAL_GET_ACCT_BILLINFO to get the Bill Info object.
This information is used to populate PCM_OP_AR_GET_BILL_ITEMS_inputFlist and calls the BRM opcode PCM_OP_AR_GET_BILL_ITEMS. The opcode returns the invoice header, service charges, and items in a flat message to the calling QueryInvoiceListBRMCommsProvABCSImpl.

6. The QueryInvoiceListBRMCommsProvABCSImpl transforms the API output PCM_OP_AR_GET_BILL_ITEMS_outputFlist into the EBM QueryInvoiceListRespMsg and returns it to QueryInvoiceSiebelCommsReqABCSImpl.

7. The QueryInvoiceSiebelCommsReqABCSImpl transforms the QueryInvoiceListRespMsg into the QueryInvoiceRespMsg and returns it to the Siebel Invoice ABC interface service.
The QueryInvoiceListRespMsg is a flat message from which service charges are calculated and the invoice header, service charges, and items are returned as the QueryInvoiceRespMsg to the calling InvoiceSiebelCommsReqABCS.

8. The InvoiceSiebelCommsReqABCS returns the QueryInvoiceRespMsg to the calling Siebel web service.

4.4 QueryInvoiceUsageAllocation Integration Flow

This integration flow uses the following interfaces:

- InvoiceSiebelCommsReqABCS with operation QueryEventDetails

- QueryInvoiceEventDetailsSiebelCommsReqABCSImpl

- QueryInvoiceListBRMCommsProvABCSImpl

Figure 4-8 illustrates the QueryInvoiceUsageAllocation integration scenario.

Figure 4-8 QueryInvoiceUsageAllocation Sequence Diagram

When you initiate the QueryInvoiceUsageAllocation process, the following events occur:

1. In Siebel CRM, navigate to the Accounts screen, query an account, and select the billing profile for the account.
In the Billing Profile screen, click the Bills tab and select an invoice. Select an item charge and click the Net Amount link of the item to view Event Details. This action calls Siebel outbound web service InvoiceSiebelCommsReqABCS to query the event details from the billing system.

2. Navigating to the Invoice Event Details (call detail (CDR) records) applet in the Billing BRM screen invokes the InvoiceSiebelCommsReqABCSService web service with operation QueryEventDetails, which in turn calls the InvoiceSiebelCommsReqABCS with operation QueryEventDetails.
InvoiceSiebelCommsReqABCS is a generic Siebel Invoice interface service with several operations defined in the Invoice EBO.

3. Invoking InvoiceSiebelCommsReqABCS with operation QueryEventDetails routes the QueryEventDetailsReqMsg to the QueryInvoiceEventDetailsSiebelCommsReqABCSImpl.

4. The QueryInvoiceEventDetailsSiebelCommsReqABCSImpl transforms the QueryEventDetailsReqMsg into Invoice EBM and routes the QueryInvoiceListReqMsg to the appropriate billing system.
As delivered, QueryInvoiceListReqMsg is routed to the QueryInvoiceListBRMCommsProvABCSImpl.

5. QueryInvoiceListBRMCommsProvABCSImpl checks query criteria code.
If it is Query Usage Allocation, then it transforms QueryInvoiceListReqMsg into the input of PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT and calls the opcode PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT.

6. QueryInvoiceListBRMCommsProvABCSImpl then transforms the API output PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT_RespMsg into EBM QueryInvoiceListRespMsg and returns it to QueryInvoiceEventDetailsSiebelCommsReqABCSImpl.

7. QueryInvoiceEventDetailsSiebelCommsReqABCSImpl transforms the QueryInvoiceListRespMsg into QueryEventDetailsRespMsg, which is returned to InvoiceSiebelCommsReqABCS.

8. InvoiceSiebelCommsReqABCS returns the QueryEventDetailsRespMsg to the calling Siebel web service.

9. The system then writes the response message to the Siebel Invoice VBC for the user.

4.5 SearchInvoiceUsageAllocation Integration Flow

This integration flow uses the following interfaces:

- InvoiceSiebelCommsReqABCS with operation SearchEventDetails

- SearchInvoiceEventDetailsSiebelCommsReqABCSImpl

- QueryInvoiceListBRMCommsProvABCSImpl

The SearchInvoiceUsageAllocation supports searching invoice event details (CDR records) on the following columns in addition to the account ID and the item charge ID that are passed to Query Invoice Details:

- Minimum Amount

- Maximum Amount

- Start Date

- End Date

The Oracle BRM opcode PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT supports only simple queries, so the search supports passing only the data through and not passing complex query criteria, (for example, >, <, between, and so on).

Figure 4-9 illustrates the SearchInvoiceUsageAllocation integration scenario.

Figure 4-9 SearchInvoiceUsageAllocation Sequence Diagram

When you initiate the SearchInvoiceUsageAllocation process, the following events occur:

1. In Siebel CRM, navigate to the Accounts screen, query an account, and select the billing profile for the account.
In the Billing Profile screen, click the Bills tab and select an invoice. Select an item charge, and click the Net Amount link of the item to view event details of all CDR records for that item charge.

2. Clicking the Search button on the Invoice Event Details (CDR details) applet opens the search applet for query.

3. Entering the search criteria and clicking Go invokes an outbound web service InvoiceSiebelReqABCS that in turn calls the InvoiceSiebelCommsReqABCS with operation SearchEventDetails.
InvoiceSiebelCommsReqABCS is a generic Siebel Invoice interface service with several operations defined on the Invoice EBO.

4. Invoking InvoiceSiebelCommsReqABCS with operation SearchEventDetails routes the SearchEventDetailsReqMsg to the SearchInvoiceEventDetailsSiebelCommsReqABCSImpl.

5. The SearchInvoiceEventDetailsSiebelCommsReqABCSImpl transforms the SearchEventDetailsReqMsg into an Invoice EBM and routes the QueryInvoiceListReqMsg to the appropriate billing systems.
As delivered, QueryInvoiceListReqMsg is routed to the QueryInvoiceListBRMCommsProvABCSImpl.

6. QueryInvoiceListBRMCommsProvABCSImpl checks the query criteria code. If the query criteria code is Usage Allocation, it then transforms QueryInvoiceListReqMsg into the input of PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT and calls the Oracle BRM opcode PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT.

7. QueryInvoiceListBRMCommsProvABCSImpl transforms the API output PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT_RespMsg into EBM QueryInvoiceListRespMsg and returns it to SearchInvoiceEventDetailsSiebelCommsReqABCSImpl.

8. SearchInvoiceEventDetailsSiebelCommsReqABCSImpl transforms the QueryInvoiceListRespMsg into a SearchEventDetailsRespMsg, which is returned to InvoiceSiebelCommsReqABCS.

9. InvoiceSiebelCommsReqABCS returns the SearchEventDetailsRespMsg to the calling Siebel web service.

10. The system writes the search response to the Siebel Invoice VBC for the user.

4.6 QueryInvoiceUsageAllocationResource Integration Flow

This integration flow uses the following interfaces:

- InvoiceSiebelCommsReqABCS with operation QueryBalanceDetails

- QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl

- QueryInvoiceListBRMCommsProvABCSImpl

Figure 4-10 illustrates the QueryInvoiceUsageAllocationResource integration scenario.

Figure 4-10 QueryInvoiceUsageAllocationResource Sequence Diagram

When you initiate the QueryInvoiceUsageAllocationResource process, the following events occur:

1. In Siebel CRM, navigate to the Accounts screen, query an account, and select the billing profile for the account.
In the Billing Profile screen, click the Bills tab and select an invoice. In Event Details, click View Detail to query the resource impact details for an event from the billing system. A web service call is made to query resource impact details for a particular event from the billing system, which in turn calls the InvoiceSiebelCommsReqABCS with operation QueryResourceBalance.

InvoiceSiebelCommsReqABCS is a generic Siebel Invoice interface service with several operations defined on the Invoice EBO.

2. Invoking InvoiceSiebelCommsReqABCS with operation QueryBalanceDetails routes the QueryBalanceDetailsReqMsg to the QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl.

3. The QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl transforms the QueryBalanceDetailsReqMsg into Invoice EBM and routes the QueryInvoiceListReqMsg to the appropriate billing system.
As delivered, QueryInvoiceListReqMsg is routed to the QueryInvoiceListBRMCommsProvABCSImpl.

4. QueryInvoiceListBRMCommsProvABCSImpl checks the query criteria code.
If the query criteria code is Query Balance Details, it transforms QueryInvoiceListReqMsg into the input of PCM_OP_ AR_RESOURCE_AGGREGATION and calls the opcode PCM_OP_ AR_RESOURCE_AGGREGATION.

5. QueryInvoiceListBRMCommsProvABCSImpl transforms the API output PCM_OP_ AR_RESOURCE_AGGREGATION_RespMsg into EBM QueryInvoiceListRespMsg and returns it to QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl.

6. QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl transforms the QueryInvoiceListRespMsg into QueryBalanceDetailsRespMsg, which is returned to the InvoiceSiebelCommsReqABCS.

7. InvoiceSiebelCommsReqABCS returns the QueryBalanceDetailsRespMsg back to the calling Siebel web service.

8. The system writes the message to the Siebel UsageAllocationResource VBC for the user.

4.7 Oracle BRM Interfaces

The QueryInvoiceList integration flow uses this opcode:

- PCM_OP_AR_GET_ACCT_BILLS

The QueryInvoice integration flow uses this opcode:

- PCM_ OP_AR_GET_BILL_ITEMS

The QueryInvoiceUsageAllocation integration flow uses this opcode:

- PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT

The SearchInvoiceUsageAllocation integration flow uses this opcode:

- PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT

The QueryInvoiceUsageAllocationResource integration flow uses this opcode:

- PCM_OP_AR_RESOURCE_AGGREGATION_RespMsg

For more information, see See Oracle Communications Billing and Revenue Management Opcode Flist Reference.

4.8 Siebel CRM Interfaces

The Invoice integration flow uses the following Siebel CRM interface:

- InvoiceSiebelCommsReqABCS

For more information, see the Siebel Order Management Guide Addendum for Communications, "Web Services Reference."

4.9 Industry Oracle AIA Components

The Invoice integration flow uses the following delivered enterprise business object (EBO) and enterprise business messages (EBMs):

- InvoiceEBO

- QueryInvoiceEBM

- QueryInvoiceResponseEBM

- QueryInvoiceListEBM

- QueryInvoiceListResponseEBM

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located under the Metadata Services (MDS) repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/

The industry enterprise business service (EBS) WSDL files are located under the MDS repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/

For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in the Oracle Enterprise Repository (OER).

For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.

4.10 Integration Services

These services are delivered with the Invoice Integration flow:

- InvoiceSiebelCommsReqABCS with operations QueryInvoiceList, QueryInvoice, QueryEventDetails, SearchEventDetails, and QueryBalanceDetails

- QueryInvoiceListSiebelCommsReqABCSImpl

- QueryInvoiceListBRMCommsProvABCSImpl

- QueryInvoiceSiebelCommsReqABCSImpl

- QueryInvoiceEventDetailsSiebelCommsReqABCSImpl

- SearchInvoiceEventDetailsSiebelCommsReqABCSImpl

- QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl

4.10.1 InvoiceSiebelCommsReqABCS

InvoiceSiebelCommsReqABCS exposes the following operations related to the Invoice integration on the Siebel ABM:

- QueryInvoiceList:

- Routes QueryInvoiceListReqMsg to the requester implementation service

- Routes QueryInvoiceListRespMsg to the requester

- QueryInvoice:

- Routes QueryInvoiceReqMsg to the requester implementation service

- Routes QueryInvoiceRespMsg to the requester

- QueryEventDetails:

- Routes QueryEventDetailsReqMsg to the requester implementation service

- Routes QueryEventDetailsRespMsg to the requester.

- SearchEventDetails:

- Routes SearchEventDetailsReqMsg to the requester implementation service

- Routes SearchEventDetailsRespMsg to the requester

- QueryBalanceDetails:

- Routes QueryBalanceDetailsReqMsg to the requester implementation service

- Routes QueryBalanceDetailsRespMsg to the requester

- QueryInvoiceListSiebelCommsReqABCSImpl

- QueryInvoiceListSiebelCommsReqABCSImpl transforms the Siebel message into a QueryInvoiceList EBM and calls the provider to query the invoice list response from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

4.10.2 QueryInvoiceListBRMCommsProvABCSImpl

QueryInvoiceListBRMCommsProvABCSImpl transforms:

- QueryInvoiceListRequestEBM into Oracle BRM API input format and calls the API to query the invoice list output from the billing system.
It then transforms the output from the API back to an Invoice EBM message and returns it to the calling requestor.

- QueryInvoice EBM into Oracle BRM API input formats and calls the APIs to Query the Invoice output from the billing system.
It then transforms the output from the APIs back to an Invoice EBM message and returns it to the calling requestor.

- QueryInvoiceList EBM into Oracle BRM API input formats and calls the APIs to Query the Invoice Event Details output from the billing system.
It then transforms the output from the APIs back to an Invoice EBM message and returns it to the calling requestor.

- Invoice EBM into Oracle BRM API input formats and calls the APIs to Query the Resource Impact output from the billing system.
It then transforms the output from the APIs back to an Invoice EBM message and returns it to the calling requestor.

4.10.3 QueryInvoiceSiebelCommsReqABCSImpl

QueryInvoiceSiebelCommsReqABCSImpl transforms the Siebel message into QueryInvoiceEBM and calls the provider to query the invoice from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

4.10.4 QueryInvoiceEventDetailsSiebelCommsReqABCSImpl

QueryInvoiceEventDetailsSiebelCommsReqABCSImpl transforms the Siebel message into QueryInvoiceList EBM and calls the provider to query the invoice event details response from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

4.10.5 SearchInvoiceEventDetailsSiebelCommsReqABCSImpl

SearchInvoiceEventDetailsSiebelCommsReqABCSImpl transforms the Siebel message into QueryInvoiceList EBM and calls the provider to query the Invoice Event Details response from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

SearchInvoiceCharge supports searching invoice event details (CDR records) on the following columns in addition to the account ID and the item charge ID that are passed to Query Invoice Details:

- Minimum Amount

- Maximum Amount

- Start Date

- End Date

The Oracle BRM opcode PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT supports only simple queries, so the search supports passing only the data through and not passing complex query criteria (for example: >, <, between, and so on).

4.10.6 QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl

QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl transforms the Siebel message into an Invoice EBM and calls the provider to query the Resource Impact response from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

5 Service Usage Integration Flow

This chapter provides an overview of the Service Usage integration flows and discusses Oracle Billing and Revenue Management (Oracle BRM) and Siebel Customer Relationship Management (Siebel CRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

- Section 5.1, "Service Usage Integration Overview"

- Section 5.2, "QueryServiceUsage Integration Flow"

- Section 5.3, "QueryServiceUsageAllocation Integration Flow"

- Section 5.4, "SearchServiceUsageAllocation Integration Flow"

- Section 5.5, "QueryServiceUsageAllocationResource Integration Flow"

- Section 5.6, "Oracle BRM Interfaces"

- Section 5.7, "Siebel CRM Interfaces"

- Section 5.8, "Industry Oracle AIA Components"

- Section 5.9, "Integration Services"

5.1 Service Usage Integration Overview

The Service Usage integration between Siebel CRM and Oracle BRM supports the following integration scenarios:

- QueryServiceUsage enables a customer service representative (CSR) to view account-billing-profile-service-usage-summary in Siebel CRM.

- QueryServiceUsageAllocation enables a CSR to view account-billing-profile-service-usage-charge-details in Siebel CRM.

- SearchServiceUsageAllocation enables a CSR to search account-billing-profile-service-usage-charge-details based on a few columns.

- QueryServiceUsageAllocationResource enables a CSR to view resource balances (for example, nonmonetary) for service usage events in Siebel CRM.

Events that have been captured by Oracle BRM but have not been billed are called unbilled usage events. Customer questions about unbilled (service) usage are the most common queries for CSRs. This is because Wireless communications service providers (CSPs) offer service plans that include free usage per bill cycle.

Examples include:

- 1000 Free Local and Long Distance Minutes per month.

- 10 Free SMS per month.

- 1M of data download.

Unlike invoice information, unbilled usage information is constantly changing. The Oracle BRM has the most current status of all unbilled usage, so Siebel CRM must retrieve this information, in real time, so that the CSR can respond to customers' questions accurately.

When the CSR clicks the Unbilled Usage tab on the Billing Profile screen, it triggers a request to retrieve item charges from the billing system. The integration process aggregates the item charge information to the services level so that service charges can be displayed in the Service Charges applet.

CSRs can request detailed unbilled data at the event (CDR) level. This is a separate request to Oracle BRM. Because this data is generally large, CSRs can limit the data returned by specifying search criteria.

Note:

The date and time information of the event details and CDR, which is displayed in the Siebel UI, is specific to the time zone from where the event originated.

Figure 5-1 illustrates the View Service Usage flow:

Figure 5-1 View Service Usage Flow

To view account billing profile service usage in Siebel CRM:

Note:

Siebel UI screenshots are for reference only and may differ from actual screens.

1. Navigate to the Accounts screen and query an account. Scroll down to the Billing Profile applet for this account and click the Billing Profile Name link.

2. Click the Unbilled Usage tab to view the account's billing profile service usage summary, as shown in Figure 5-2.

Figure 5-2 Siebel UI - Billing Profile: Service Usage Summary

3. Click the Net Amount link for a particular item charge to view account billing profile service usage allocation (CDRs), as shown in Figure 5-3.

Figure 5-3 Siebel UI - Billing Profile: Service Usage Allocation

4. Click the Search tab to search account billing profile service usage charge details.

5. Click the View Details tab to view resource balances for service usage events.

For more information about the mapping of Siebel CRM elements to Oracle BRM elements, see Appendix A, "Mapping Siebel Billing Management UI Elements to Oracle BRM Customer Center."

5.2 QueryServiceUsage Integration Flow

This integration flow uses the following interfaces:

- UnbilledUsageSiebelCommsReqABCS with operation QueryUnbilledUsage

- QueryUnbilledUsageSiebelCommsReqABCSImpl

- QueryServiceUsageBRMCommsProvABCSImpl

Figure 5-4 illustrates the QueryServiceUsage integration scenario.

Figure 5-4 QueryServiceUsage Sequence Diagram

When you initiate the QueryServiceUsage process, the following events occur:

1. In Siebel CRM, navigate to the Accounts screen, query an account, and click a billing profile for the account.
This displays the Billing Profile BRM screen. When you click the Unbilled Usage tab for the billing profile, the Unbilled Usage screen opens and a web service UnbilledUsageSiebelCommsReqABCS call is made to get the unbilled usage details from the billing system.

2. Navigating to the Unbilled Usage tab invokes the UnbilledUsageSiebelCommsReqABCS web service, which in turn calls the UnbilledUsageSiebelCommsReqABCS with operation QueryUnbilledUsage.
UnbilledUsageSiebelCommsReqABCS is a generic Siebel UnbilledUsage interface service with several operations defined.

3. Invoking UnbilledUsageSiebelCommsReqABCS with operation QueryUnbilledUsage routes the Siebel QueryUnbilledUsageReqMsg to the QueryUnbilledUsageSiebelCommsReqABCSImpl.

4. The QueryUnbilledUsageSiebelCommsReqABCSImpl first transforms the QueryUnbilledUsageReqMsg into QueryServiceUsageEBM and routes the QueryServiceUsageListReqMsg to the appropriate billing systems.
As delivered, QueryServiceUsageListReqMsg is routed to the QueryServiceUsageListBRMCommsProvABCSImpl.

5. QueryServiceUsageBRMCommsProvABCSImpl looks up QueryCode in enterprise business message (EBM) and transforms QueryServiceUsageListReqMsg into the input of PCM_OP_BAL_GET_ACCT_BILLINFO and calls the BRM opcode PCM_OP_BAL_GET_ACCT_BILLINFO.

6. The Oracle BRM application programming interface (API) PCM_OP_BAL_GET_ACCT_BILLINFO returns the list of bill infos of that account along with their AR_Billinfo to the calling QueryServiceUsageListBRMCommsProvABCSImpl.

7. This information is used to populate PCM_OP_AR_GET_BILL_ITEMS_inputFlist and calls the BRM opcode PCM_OP_AR_GET_BILL_ITEMS. The opcode returns the invoice header, service charges, and items in a flat message.

8. QueryServiceUsageBRMCommsProvABCSImpl then transforms the Oracle BRM API PCM_OP_AR_GET_BILL_ITEMS output into QueryServiceUsageListRespMsg and returns it to QueryUnbilledUsageSiebelCommsReqABCSImpl.

9. QueryUnbilledUsageSiebelCommsReqABCSImpl transforms the QueryUnbilledUsageRespMsg into QueryUnbilledUsageRespMsg, which is returned to UnbilledUsageSiebelCommsReqABCS.

10. UnbilledUsageSiebelCommsReqABCS returns the QueryUnbilledUsageRespMsg to the calling CMUUnbilledUsage as CMUUnbilledUsageResponseMessage.

11. The system writes the CMUUnbilledUsageResponseMessage to the Siebel unbilled usage Details virtual business component (VBC) for the user.

5.3 QueryServiceUsageAllocation Integration Flow

This integration flow uses the following interfaces:

- UnbilledUsageSiebelCommsReqABCS with operation QueryEventDetails

- QueryUnbilledEventDetailsSiebelCommsReqABCSImpl

- QueryServiceUsageBRMCommsProvABCSImpl

Figure 5-5 illustrates the QueryServiceUsageAllocation integration scenario.

Figure 5-5 QueryServiceUsageAllocation Sequence Diagram

When you initiate the QueryServiceUsageAllocation process, the following events occur:

1. In Siebel CRM, navigate to the Accounts screen, query an account, and click the Billing Profile tab.
This displays the Billing Profile screen. Click the Unbilled Usage tab to open the Unbilled Usage screen.

2. Clicking the Net Amount link for a particular item charge invokes the UnbilledUsageSiebelCommsReqABCS web service, which in turn calls the UnbilledUsageSiebelCommsReqABCS with operation QueryEventDetails.
UnbilledUsageSiebelCommsReqABCS is a generic Siebel UnbilledUsage interface service with several operations defined.

3. Invoking UnbilledUsageSiebelCommsReqABCS with operation QueryEventDetails routes the Siebel QueryEventDetailsReqMsg to the QueryUnbilledEventDetailsSiebelCommsReqABCSImpl.

4. The QueryUnbilledEventDetailsSiebelCommsReqABCSImpl transforms the QueryEventDetailsReqMsg into QueryServiceUsageListEBM and routes the QueryServiceUsageListReqMsg to the appropriate billing systems.
As delivered, QueryServiceUsageListReqMsg is routed to the QueryServiceUsageListBRMCommsProvABCSImpl.

5. QueryServiceUsageBRMCommsProvABCSImpl looks up the value of QueryCode and transforms QueryServiceUsageListReqMsg into the input of PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT and calls the opcode PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT.

6. API PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT returns the Item Charge Details or Events output to the calling QueryServiceUsageBRMCommsProvABCSImpl.

7. QueryServiceUsageListBRMCommsProvABCSImpl then transforms the Oracle BRM API output into QueryServiceUsageListRespMsg and returns it to QueryUnbilledEventDetailsSiebelCommsReqABCSImpl.

8. QueryUnbilledEventDetailsSiebelCommsReqABCSImpl transforms the QueryServiceUsageListRespMsg into QueryEventDetailsRespMsg, which is returned to UnbilledUsageSiebelCommsReqABCS.

9. UnbilledUsageSiebelCommsReqABCS returns the QueryEventDetailsRespMsg to the calling UnbilledUsageSiebelCommsReqABCS as CMUUnbilledDetailsResponseMessage.

10. The system writes the CMUUnbilledDetailsResponseMessage to the Siebel Unbilled Item Charge Details VBC for the user.

5.4 SearchServiceUsageAllocation Integration Flow

This integration flow uses the following interfaces:

- UnbilledUsageSiebelCommsReqABCS with operation SearchEventDetails

- SearchUnbilledEventDetailsSiebelCommsReqABCSImpl

- QueryServiceUsageBRMCommsProvABCSImpl

Figure 5-6 illustrates the SearchServiceUsageAllocation integration scenario.

Figure 5-6 SearchServiceUsageAllocation Sequence Diagram

When you initiate the SearchServiceUsageAllocation process, the following events occur:

1. In Siebel CRM, navigate to the Accounts screen, query an account, and click the Billing Profile tab.
This displays the Billing Profile screen. Click the Unbilled Usage tab to access the Unbilled Usage screen. Click the Net Amount link for an item charge. The event details for that item charge displays on the event details applet. Click the Search button to open a separate applet to specify search criteria. After entering values for these fields, click the Go button.

2. Clicking Go invokes the UnbilledUsageSiebelCommsReqABCS web service, which in turn calls UnbilledUsageSiebelCommsReqABCS with operation SearchEventDetails.
UnbilledUsageSiebelCommsReqABCS is a generic Siebel UnbilledUsage interface service with several operations defined.

3. Invoking UnbilledUsageSiebelCommsReqABCS with operation SearchEventDetails routes the Siebel SearchEventDetailsReqMsg to SearchUnbilledEventDetailsSiebelCommsReqABCSImpl.

4. SearchUnbilledEventDetailsSiebelCommsReqABCSImpl transforms SearchEventDetailsReqMsg into QueryServiceUsageEBM and routes the QueryServiceUsageListReqMsg to the appropriate billing systems.
As delivered, QueryServiceUsageListReqMsg is routed to QueryServiceUsageListBRMCommsProvABCSImpl.

5. QueryServiceUsageBRMCommsProvABCSImpl transforms QueryServiceUsageListReqMsg into the input of PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT and calls the Oracle BRM opcode PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT.

6. Oracle BRM API PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT returns the Item Charge Details output to the calling QueryServiceUsageBRMCommsProvABCSImpl.

7. QueryServiceUsageBRMCommsProvABCSImpl then transforms the BRM API output into QueryServiceUsageListRespMsg and returns it to SearchUnbilledUsageEventDetailsSiebelCommsReqABCSImpl.

8. SearchUnbilledEventDetailsSiebelCommsReqABCSImpl then transforms the QueryServiceUsageListRespMsg into SearchEventDetailsRespMsg, which is returned to UnbilledUsageSiebelCommsReqABCS.

9. UnbilledUsageSiebelCommsReqABCS returns the SearchEventDetailsRespMsg to the calling Siebel web service UnbilledUsageSiebelCommsReqABCS as CMUUnbilledDetailsSearchResponseMessage.

10. The system writes the CMUUnbilledDetailsSearchResponseMessage to the Siebel Unbilled Item Charge Details VBC for the user.

SearchServiceUsageAllocation supports searching service usage item details (CDR records) on the following columns in addition to the account ID and item charge ID that are passed to SearchEventDetails:

- Minimum Amount

- Maximum Amount

- Start Date

- End Date

The Oracle BRM opcode PCM_OP_ BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT supports only simple queries and passes only the data through. It does not pass complex query criteria (for example, >, <, between, and so on).

5.5 QueryServiceUsageAllocationResource Integration Flow

This integration flow uses the following interfaces:

- UnbilledUsageSiebelCommsReqABCS with operation QueryBalanceDetails

- QueryUnbilledBalanceDetailsSiebelCommsReqABCSImpl

- QueryServiceUsageBRMCommsProvABCSImpl

Figure 5-7 illustrates the QueryServiceUsageAllocationResource integration scenario.

Figure 5-7 QueryServiceUsageAllocationResource Sequence Diagram

When you initiate the QueryServiceUsageAllocationResource process, the following events occur:

1. In Siebel CRM Query Account, navigate to the Account Summary screen, and drill down on the Billing Profile Name in the Billing Profile applet.
This displays the Billing Profile screen. Click the Unbilled Usage tab, and then click the Net Amount link for an item charge. This accesses the Event Details applet for that item charge.

2. Clicking View Details for a particular nonmonetary event invokes the outbound web service UnbilledUsageSiebelCommsReqABCS to query resource balance details for a particular event from the billing system, which in turn calls UnbilledUsageSiebelCommsReqABCS with operation QueryResourceBalance.

3. Invoking UnbilledUsageSiebelCommsReqABCS with operation QueryBalanceDetails routes the QueryBalanceDetailsReqMsg to QueryUnbilledBalanceDetailsSiebelCommsReqABCSImpl.

4. QueryUnbilledBalanceDetailsSiebelCommsReqABCSImpl transforms the QueryBalanceDetailsReqMsg into a Service Usage EBM and routes the QueryServiceUsageListReqMsg to the appropriate billing systems.
As delivered, QueryServiceUsageListReqMsg is routed to QueryServiceUsageListBRMCommsProvABCSImpl.

5. QueryServiceUsageBRMCommsProvABCSImpl transforms QueryServiceUsageListReqMsg into the input of PCM_OP_ AR_RESOURCE_AGGREGATION and calls the Oracle BRM API PCM_OP_ AR_RESOURCE_AGGREGATION.

6. Oracle BRM API PCM_OP_ AR_RESOURCE_AGGREGATION returns the resource balance records for a particular event as part of PCM_OP_AR_RESOURCE_AGGREGATION_outputFlist to QueryServiceUsageBRMCommsProvABCSImpl.

7. QueryServiceUsageBRMCommsProvABCSImpl then transforms the API output PCM_OP_ AR_RESOURCE_AGGREGATION_RespMsg into QueryServiceUsageListRespMsg and returns it to QueryUnbilledUsageBalanceDetailsSiebelCommsReqABCSImpl.

8. QueryUnbilledBalanceDetailsSiebelCommsReqABCSImpl transforms the QueryServiceUsageListRespMsg into QueryBalanceDetailsRespMsg, which is returned to UnbilledUsageSiebelCommsReqABCS.

9. UnbilledUsageSiebelCommsReqABCS returns the QueryBalanceDetailsRespMsg to the calling Siebel web service.

10. The system writes the message to the Siebel Balance Total VBC for the user.

5.6 Oracle BRM Interfaces

The QueryServiceUsage integration flow uses this opcode:

- PCM_OP_BAL_GET_ACCT_BILLINFO

The QueryServiceUsageAllocation integration flow uses this opcode:

- PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT

The SearchServiceUsageAllocation integration flow uses this opcode:

- PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT

The QueryServiceUsageAllocationResource integration flow uses this opcode:

- PCM_OP_AR_RESOURCE_AGGREGATION

For more information, see See Oracle Communications Billing and Revenue Management Opcode Flist Reference.

5.7 Siebel CRM Interfaces

The service usage integration flow uses this Siebel CRM interface:

- UnbilledUsageSiebelCommsReqABCS

For more information, see the Siebel Order Management Guide Addendum for Communications, "Web Services Reference."

5.8 Industry Oracle AIA Components

The Service Usage integration uses the following delivered Industry Oracle AIA components:

- ServiceUsageEBO

- QueryServiceUsageListEBM

- QueryServiceUsageListRequestEBM

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located under the Metadata Services (MDS) repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/

The industry enterprise business service (EBS) WSDL files are located under the MDS repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/

For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in the Oracle Enterprise Repository (OER).

For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.

5.9 Integration Services

These services are delivered with the Service Usage integration flow:

- UnbilledUsageSiebelCommsReqABCS with operations QueryUnbilledUsage, QueryEventDetails, SearchEventDetails, and QueryBalanceDetails

- QueryUnbilledUsageSiebelCommsReqABCSImpl

- QueryServiceUsageBRMCommsProvABCSImpl

- QueryUnbilledEventDetailsSiebelCommsReqABCSImpl

- SearchUnbilledEventDetailsSiebelCommsReqABCSImpl

- QueryUnbilled7yBalanceDetailsSiebelCommsReqABCSImpl

5.9.1 UnbilledUsageSiebelCommsReqABCS

UnbilledUsageSiebelCommsReqABCS exposes the following operations:

- QueryUnbilledUsage:

- Routes QueryUnbilledUsageReqMsg to the requester implementation service

- Routes QueryUnbilledUsageRespMsg to the requester

- QueryEventDetails:

- Routes QueryEventDetailsReqMsg to the requester implementation service

- Routes QueryEventDetailsRespMsg to the requester

- SearchEventDetails:

- Routes SearchEventDetailsReqMsg to the requester implementation service

- Routes SearchEventDetailsRespMsg to the requester

- QueryBalanceDetails:

- Routes QueryBalanceDetailsReqMsg to the requester implementation service

- Routes QueryBalanceDetailsRespMsg to the requester

For more information, see Siebel Communications Guide, Web Service Reference.

5.9.2 QueryUnbilledUsageSiebelCommsReqABCSImpl

This service transforms the Siebel message into a QueryServiceUsageListRequest EBM and calls the provider to get the QueryServiceUsage response from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

5.9.3 QueryServiceUsageListBRMCommsProvABCSImpl

QueryServiceUsageListBRMCommsProvABCSImpl transforms:

- ServiceUsageEBM into Oracle BRM API input format and calls the API to get the service items output from the billing system.
It then transforms the output from the API back to a ServiceUsage EBM message and returns it to the calling requestor.

- QueryServiceUsageListEBM into Oracle BRM API input formats and calls the APIs to query the resource balance output from the billing system.
It then transforms the output from the APIs back to a ServiceUsage EBM message and returns it to the calling requestor.

5.9.4 QueryUnbilledUsageEventDetailsSiebelCommsReqABCSImpl

QueryUnbilledUsageEventDetailsSiebelCommsReqABCSImpl transforms the QueryEventDetailsReqMsg into QueryServiceUsageListEBM.

5.9.5 SearchUnbilledUsageEventDetailsSiebelCommsReqABCSImpl

SearchUnbilledUsageEventDetailsSiebelCommsReqABCSImpl transforms SearchEventDetailsReqMsg into QueryServiceUsageEBM.

5.9.6 QueryUnbilledUsageBalanceDetailsSiebelCommsReqABCSImpl

QueryUnbilledUsageBalanceDetailsSiebelCommsReqABCSImpl transforms the Siebel message into a QueryServiceUsageListEBM and calls the provider to query the resource balance response from the billing system. It then transforms the EBM response back to a Siebel message and returns it to the calling Siebel web service.

6 Payment Integration Flow

This chapter provides an overview of the payment integration flows and discusses Oracle Billing and Revenue Management (Oracle BRM) and Siebel Customer Relationship Management (Siebel CRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

- Section 6.1, "Payment Integration Overview"

- Section 6.2, "CreateReceivedPayment Integration Flow"

- Section 6.3, "QueryReceivedPaymentList Integration Flow"

- Section 6.4, "SearchPayment Integration Flow"

- Section 6.5, "Oracle BRM Interfaces"

- Section 6.6, "Siebel CRM Interfaces"

- Section 6.7, "Industry Oracle AIA Components"

- Section 6.8, "Integration Services"

6.1 Payment Integration Overview

The payment integration between Siebel CRM and Oracle BRM supports the following integration scenarios:

- CreateReceivedPayment enables a customer service representative (CSR) to capture a payment in Siebel CRM either for an account at the billing profile-level or at the invoice-level and to post the payment in Oracle BRM.

- QueryReceivedPaymentList enables a CSR to view the history of payments in Siebel CRM at both the billing profile-level and invoice-level by retrieving those records from Oracle BRM.

- SearchPayment enables a CSR to search for payment records in Oracle BRM to display in Siebel CRM for an account at the billing profile-level or at the invoice-level.

6.1.1 Creating Payments

A customer makes a payment to a customer service provider (CSP) in many ways: over the phone using a credit card or debit card, self-service using a credit or debit card, mailing a check to the CSP's lockbox, or electronic payment from a checking account to the CSP's account.

The capture payment feature is used for one-time payments. Siebel CRM captures the payment information and submits it to Oracle BRM for processing. Oracle BRM processes the payment and returns a confirmation to Siebel CRM, which the customer can keep for records.

One time payments are handled by this integration.

A service account that is a nonpaying account is not responsible for paying its own dues. All dues applicable to the nonpaying account are paid by the parent (billing) account. The One-Time payment feature is used to pay for nonpaying account dues by using the parent's billing profile screen. Navigate to this screen by clicking the parent's billing profile that is associated with the nonpaying account.

Figure 6-1 illustrates the flow for capturing payments.

Figure 6-1 Capturing Payments Flow

To view the history of payments and to capture new payments in Siebel CRM:

Note:

Siebel UI screenshots are for reference only and may differ from actual screens.

1. Navigate to the Accounts screen and query an account. Scroll down to the Billing profile applet for this account and click the Billing profile Name link.

2. Click the Payments tab to view the history of payments, as shown in Figure 6-2.

Figure 6-2 Siebel UI - Payments

3. Click New to capture a new payment for this account, as shown in Figure 6-3.

Figure 6-3 Siebel UI - Capture New Payment

4. From the Payments tab, click Search to open the Search applet and search for specific payment records.

For more information about the mapping of Siebel CRM elements to Oracle BRM elements, see Appendix A, "Mapping Siebel Billing Management UI Elements to Oracle BRM Customer Center."

6.1.2 Viewing Payment History

A customer makes a payment to a CSP in many ways. Regardless of how the payment is made, it must be displayed in the payment history retrieved from the billing system into Siebel CRM. Based on legal requirements and best practices, Oracle BRM maintains payment information for a customer for a fixed period. This duration varies by the legal requirements of a country and by CSPs.

During a sales or service process, a customer may want to know his payment history. Customer service representatives (CSRs) can query a customer's past payments to respond to queries from the Payments tab of the Siebel Billing Profile screen, triggering a request to the billing system to return the latest n payments. CSRs can also specify search criteria to find the correct payment record if the initial list of payments is not the right one. The Payment History view also indicates the user of any payment reversals that might have been made on a payment that has been previously processed and allocated.

6.1.3 Searching for Payments

The Search Payment functionality enables the CSR to search for specific payment records in Oracle BRM based on the customer request and displays these in Siebel CRM. The search is performed for an account at the billing profile- level or at the invoice-level. The CSR searches for payments on either a date range or a paid amount.

Figure 6-4 illustrates the flow for Viewing Payment History.

Figure 6-4 View Payment History Flow

6.2 CreateReceivedPayment Integration Flow

This integration flow uses the following interfaces:

- PaymentSiebelCommsReqABCS with operations CreatePayment and CreateInvoicePayment

- CreatePaymentSiebelCommsReqABCSImpl

- CreateInvoicePaymentSiebelCommsReqABCSImpl

- CreateReceivedPaymentBRMCommsProvABCSImpl

Note:

The integration flow for CreateInvoicePayment is similar to the integration flow for CreatePayment.

Figure 6-5 illustrates the CreateReceivedPayment integration scenario.

Figure 6-5 CreateReceivedPayment Sequence Diagram

When you initiate the CreateReceivedPayment process, the following events occur:

1. In Siebel CRM, a user navigates to the Accounts screen, queries an account, and clicks a billing profile for the account.
This opens the Billing Profile screen. When a user selects the Payments tab for the billing profile, the Payments screen appears. The Payments screen has buttons to create a payment and search for payments.

2. Clicking Create in the Payments screen invokes the PaymentSiebelCommsReqABCS web service, which in turn calls PaymentSiebelCommsReqABCS with operation CreatePayment.

3. Invoking PaymentSiebelCommsReqABCS with operation CreatePayment routes the Siebel CreatePaymentReqMsg to CreatePaymentSiebelCommsReqABCSImpl.

4. The CreatePaymentSiebelCommsReqABCSImpl transforms the CreatePaymentReqMsg into a Payment enterprise business message (EBM) and routes the CreateReceivedPaymentEBM to the appropriate billing system.
As delivered, CreateReceivedPaymentEBM is routed to CreateReceivedPaymentBRMCommsProvABCSImpl.

5. CreateReceivedPaymentBRMCommsProvABCSImpl transforms CreateReceivedPaymentReqMsg into the input of PCM_OP_PYMT_COLLECT and calls the BRM web service BRMPymtServices with operation PCM_OP_PYMT_COLLECT.

6. Invoking BRMPymtServices with operation PCM_OP_PYMT_COLLECT calls the application programming language (API) PCM_OP_PYMT_COLLECT and returns the payment object output to CreateReceivedPaymentBRMCommsProvABCSImpl.

7. CreateReceivedPaymentBRMCommsProvABCSImpl then transforms the Oracle BRM API output into CreateReceivedPaymentResponseEBM and returns it to CreatePaymentSiebelCommsReqABCSImpl.

8. CreatePaymentSiebelCommsReqABCSImpl transforms the CreatePaymentRespMsg into CreatePaymentSiebelRespMsg, which is returned to PaymentSiebelCommsReqABCS.

9. PaymentSiebelCommsReqABCS returns the CreatePaymentSiebelRespMsg to CMUCreatePayment as CMUCreatePaymentResponseMessage.

10. The system writes the CMUCreatePaymentResponseMessage to the Siebel virtual business component (VBC) for the user. Payment confirmation number is displayed to the user.

6.3 QueryReceivedPaymentList Integration Flow

The QueryReceivedPaymentList integration flow uses the following interfaces:

- ReceivedPaymentSiebelCommsReqABCS Interface with operations QueryPayment, SearchPayment, and QueryInvoicePayment

- QueryPaymentSiebelCommsReqABCSImpl

- QueryInvoicePaymentSiebelCommsReqABCSImpl

- SearchPaymentSiebelCommsReqABCSImpl

- QueryReceivedPaymentListBRMCommsProvABCSImpl

Note:

The QueryInvoicePayment integration flow is similar to the QueryPayment integration flow except that a different ABCSImpl is used.

Figure 6-6 illustrates the QueryReceivedPaymentList integration scenario.

Figure 6-6 QueryReceivedPaymentList Sequence Diagram

When you initiate the QueryReceivedPaymentList process, the following events occur:

1. In Siebel CRM, navigate to the Billing Profile screen.

2. Navigate to the Accounts screen, query an account, and click a billing profile for the account.
On the Billing Profile screen, click the Payments tab for the billing profile. The Payments screen has two buttons, one to create a payment and one to search for payments. Navigating to the Payments tab invokes the PaymentSiebelCommsReqABCS web service, which in turn calls PaymentSiebelCommsReqABCS with operation QueryPayment.

3. Invoking PaymentSiebelCommsReqABCS with operation QueryPayment routes the Siebel QueryPaymentReqMsg to the QueryPaymentSiebelCommsReqABCSImpl.

4. The QueryPaymentSiebelCommsReqABCSImpl transforms the QueryPaymentReqMsg into QueryReceivedPaymentListEBM and routes the QueryReceivedPaymentListEBM to the appropriate billing system.
As delivered, QueryReceivedPaymentListEBM is routed to QueryReceivedPaymentListBRMCommsProvABCSImpl.

5. QueryReceivedPaymentListBRMCommsProvABCSImpl transforms QueryReceivedPaymentListReqMsg into the input of PCM_OP_AR_GET_ACCT_ACTION_ITEMS and calls BRMARService with operation PCM_OP_AR_GET_ACCT_ACTION_ITEMS.

6. Invoking BRMARService with operation PCM_OP_AR_GET_ACCT_ACTION_ITEMS invokes the API PCM_OP_AR_GET_ACCT_ACTION_ITEMS and returns the payment object output to QueryReceivedPaymentListBRMCommsProvABCSImpl.

7. QueryReceivedPaymentListBRMCommsProvABCSImpl then transforms the Oracle BRM API output into QueryReceivedPaymentListResponseEBM and returns it to QueryReceivedPaymentListSiebelABCSImpl.

8. QueryReceivedPaymentListSiebelABCSImpl transforms the QueryReceivedPaymentListResponseEBM into QueryPaymentRespMsg, which is returned to PaymentSiebelCommsReqABCS.

9. ReceivedPaymentSiebelCommsReqABCS returns the QueryPaymentRespMsg to CMUQueryPayment as CMUQueryPaymentResponseMessage.

10. The system writes the CMUQueryPaymentResponseMessage to the Siebel Unbilled Details VBC for the user.

6.4 SearchPayment Integration Flow

This integration flow uses the following interfaces:

- ReceivedPaymentSiebelCommsReqABCSInterface with the following operations:

- QueryPayment

- SearchPayment

- QueryInvoicePayment

- SearchPaymentSiebelCommsReqABCSImpl

- QueryReceivedPaymentListBRMCommsProvABCSImpl

Figure 6-7 illustrates the SearchPayment integration scenario.

Figure 6-7 SearchPayment Sequence Diagram

When you initiate the SearchPayment process, the following events occur:

1. In Siebel CRM, the user navigates to the Accounts screen, queries an account, and clicks a billing profile for the account. This displays the Billing Profile BRM screen. Click the Payments tab for the billing profile to access the payments screen. The Payments screen has two tabs, one to create a payment and one to search for payments. When you click Search Payment, a search applet is opened. After entering the search criteria click Go. This invokes the outbound web service PaymentSiebelCommsReqABCS with operation SearchPayment to fetch the payment records in the billing system.
The following scenarios exist in which the same functionality is required in Siebel CRM. The integration flow is similar in both of these cases, but they have a separate SiebelABCSImpl.

Once the CMUGetPayments is invoked, it fetches all records. You can search based on certain search criteria such as dates and amount range. After entering inputs, click Search to initiate this flow.

From the Invoice tab, you can search for payments that are made against a specific invoice.

2. Navigating to the Payments tab invokes the PaymentSiebelCommsReqABCS web service, which calls PaymentSiebelCommsReqABCS with the operation SearchPayment.
PaymentSiebelCommsReqABCS is a generic Siebel Payments interface service with several operations defined on the ReceivedPayment enterprise business object (EBO).

3. Invoking the PaymentSiebelCommsReqABCS with the operation SearchPayment routes the Siebel SearchPaymentReqMsg to SearchPaymentSiebelCommsReqABCSImpl.

4. The SearchPaymentSiebelCommsReqABCSImpl first transforms the SearchPaymentReqMsg into the SearchReceivedPaymentEBM and routes the SearchReceivedPaymentEBM to the appropriate billing system.
As delivered, the SearchReceivedPaymentEBM is routed to the QueryReceivedPaymentListBRMCommsProvABCSImpl.

5. The QueryReceivedPaymentListBRMCommsProvABCSImpl first transforms the SearchReceivedPaymentListReqMsg into the input of PCM_OP_AR_GET_ACCT_ACTION_ITEMS and calls the Oracle BRM web service BRMARServices with the operation PCM_OP_AR_GET_ACCT_ACTION_ITEMS.

6. Invoking the BRMARServices with the operation PCM_OP_AR_GET_ACCT_ACTION_ITEMS invokes the Oracle BRM API PCM_OP_AR_GET_ACCT_ACTION_ITEMS and returns the payment object output to QueryReceivedPaymentListBRMCommsProvABCSImpl.

7. The QueryReceivedPaymentListBRMCommsProvABCSImpl then transforms the Oracle BRM API output into the SearchReceivedPaymentResponseEBM and returns it to SearchReceivedPaymentListSiebelABCSImpl.

8. The SearchReceivedPaymentListSiebelABCSImpl transforms the SearchReceivedPaymentResponseEBM into the SearchPaymentRespMsg, which is returned to the PaymentSiebelCommsReqABCS.

9. The ReceivedPaymentSiebelCommsReqABCS returns the SearchPaymentRespMsg to the calling Siebel web service CMUSearchPayment as CMUSearchPaymentResponseMessage.

10. The system writes the CMUSearchPaymentResponseMessage to the Siebel Unbilled Details VBC for the user.

6.5 Oracle BRM Interfaces

The CreateReceivedPayment integration flow uses this opcode:

- PCM_OP_PYMT_COLLECT

The QueryReceivedPaymentList integration flow uses this opcode:

- PCM_OP_AR_GET_ACCT_ACTION_ITEMS

For more information, see See Oracle Communications Billing and Revenue Management Opcode Flist Reference.

6.6 Siebel CRM Interfaces

The payment integration flow uses these Siebel CRM interfaces:

- For the CreateReceivedPayment flow: PaymentSiebelCommsReqABCS operation CreatePayment

- For the QueryReceivedPaymentList flow: PaymentSiebelCommsReqABCS operation QueryPayment

For more information, see the Siebel Order Management Guide Addendum for Communications, "Web Services Reference."

6.7 Industry Oracle AIA Components

The Payment integration uses the following delivered EBOs and EBMs:

- ReceivedPaymentEBO

- CreateReceivedPaymentEBM

- CreateReceivedPaymentResponseEBM

- QueryReceivedPaymentListEBM

- QueryReceivedPaymentListResponseEBM

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located under the Metadata Services (MDS) repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/

The industry enterprise business service (EBS) WSDL files are located under the MDS repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/

For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in the Oracle Enterprise Repository (OER).

For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.

6.8 Integration Services

These services are delivered with the Payment integration flow:

- PaymentSiebelCommsReqABCS

- CreatePaymentSiebelCommsReqABCSImpl

- CreateInvoicePaymentSiebelCommsReqABCSImpl

- CreateReceivedPaymentBRMCommsProvABCSImpl

- QueryPaymentSiebelCommsReqABCSImpl

- QueryInvoicePaymentSiebelCommsReqABCSImpl

- SearchPaymentSiebelCommsReqABCSImpl

- QueryReceivedPaymentListBRMCommsProvABCSImpl

6.8.1 PaymentSiebelCommsReqABCS

PaymentSiebelCommsReqABCS exposes the following operations:

- CreatePayment:

- Routes CreatePaymentReqMsg to the requester implementation service

- Routes CreatePaymentSiebelRespMsg to the requester

- CreateInvoicePayment:

- Routes CreateInvoicePaymentReqMsg to the requester implementation service

- Routes CreateInvoicePaymentRespMsg to the requester

- QueryPayment:

- Routes QueryPaymentReqMsg to the requester implementation service

- Routes QueryPaymentRespMsg to the requester

- SearchPayment:

- Routes SearchPaymentReqMsg to the requester implementation service

- Routes SearchPaymentRespMsg to the requester

- QueryInvoicePayment:

- Routes QueryInvoicePaymentReqMsg to the requester implementation service.

- Routes QueryInvoicePaymentRespMsg to the requester

6.8.2 CreatePaymentSiebelCommsReqABCSImpl

The CreatePaymentSiebelCommsReqABCSImpl transforms the CreatePaymentReqMsg into a Payment EBM.

6.8.3 CreateInvoicePaymentSiebelCommsReqABCSImpl

CreateInvoicePaymentSiebelCommsReqABCSImpl transforms the CreateReceivedPaymentResponseEBM into CreateInvoicePaymentSiebelRespMsg, which is returned to the Siebel Account ABC interface service.

6.8.4 CreateReceivedPaymentBRMCommsProvABCSImpl

CreateReceivedPaymentBRMCommsProvABCSImpl transforms the ReceivedPayment EBM into Oracle BRM API input format and calls the API to Create Payment output from the billing system. It then transforms the output from the API back to a ReceivedPayment EBM message and returns it to the calling requestor.

6.8.5 QueryPaymentSiebelCommsReqABCSImpl

The QueryPaymentSiebelCommsReqABCSImpl transforms the QueryPaymentReqMsg into QueryReceivedPaymentListEBM.

6.8.6 QueryInvoicePaymentSiebelCommsReqABCSImpl

The QueryInvoicePaymentSiebelCommsReqABCSImpl transforms the QueryInvoicePaymentReqMsg into ReceivedPaymentEBM.

6.8.7 SearchPaymentSiebelCommsReqABCSImpl

The SearchPaymentSiebelCommsReqABCSImpl transforms the SearchPaymentReqMsg into ReceivedPaymentEBM.

6.8.8 QueryReceivedPaymentListBRMCommsProvABCSImpl

QueryReceivedPaymentListBRMCommsProvABCSImpl transforms the Oracle BRM API output into QueryReceivedPaymentListResponseEBM.

7 Adjustment Integration Flow

This chapter provides an overview of the adjustment integration flows and discusses Oracle Billing and Revenue Management (Oracle BRM) and Siebel Customer Relationship Management (Siebel CRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services.

This chapter includes the following sections:

- Section 7.1, "Adjustment Integration Overview"

- Section 7.2, "QueryAccountBalanceAdjustment Integration Flow"

- Section 7.3, "CreateAccountBalanceAdjustment Integration Flow"

- Section 7.4, "Oracle BRM Interfaces"

- Section 7.5, "Siebel CRM Interfaces"

- Section 7.6, "Industry Oracle AIA Components"

- Section 7.7, "Integration Services"

7.1 Adjustment Integration Overview

The Adjustment integration between Siebel CRM and Oracle BRM supports the following integration scenarios:

- QueryAdjustment enables a customer service representative (CSR) to view the adjustments for an invoice in Siebel CRM.

- CreateAdjustment enables a CSR to create different levels of adjustments (invoice, item, and event) for an invoice in Siebel CRM.

The invoice adjustment feature enables CSRs to make adjustments at three levels in the invoice (header, item, and event) in Siebel CRM. When a customer calls to dispute an item or multiple items on a bill, CSRs first identify the bill, and then find the disputed items on the bill.

The integration supports adjustment requests that are both amount-based and percentage-based for adjustments at the bill/header and event-level. Therefore, a CSR either captures an adjustment request for an absolute value (such as USD 2) or percentage value (such as. 2%).

In addition to invoice adjustments, a CSR can use this integration feature to make unbilled service usage adjustments at the event (call detail (CDR) record) level.

Caution:

In the billing system, taxes can only be applied on AR items after billing. Therefore, for Unbilled Event adjustments, the tax flag that is set in the Siebel CRM UI must be Exclude Tax.

CSRs request adjustments on a variety of levels, as appropriate to the situation. For instance, if the customer made a 10-minute call that was mistakenly billed as a 30-minute call, the CSR requests an adjustment for that specific call at the call detail-level. If, however, the customers plan provided 100 free minutes a month, but charges started accruing after only 30 minutes, the CSR requests an adjustment at the summary-level instead. CSRs can create an adjustment request for one or more lines on a single invoice. The adjustment request can include the following details per line:

- Account #

- Invoice #

- Request ID

- Requested Date

- Adjustment Amount Requested

- Adjustment Type (for example, credit, debit)

- Reason for Request

- Comments

- Status

- Amount Approved

- Approval Code

- Date Approved

When the CSR clicks the Adjustments tab of the Siebel Billing Profile screen, the adjustment history information appears. The adjustment records that appear in this view are adjustment requests that have originated from Siebel CRM and stored within Siebel the database. The CSR must navigate to the Invoice Detail view to make adjustments at the header and item levels. For adjustments at the event-level, the CSR navigates to the event details view. Each adjustment request triggers a separate web services call in the billing system. The adjustment, if approved, is created in Oracle BRM and is reflected in the customers' next bill. If the adjustment is not approved, the adjustment request is updated with the reason for denial.

Figure 7-1 illustrates the flow for Adjustments:

Figure 7-1 Adjustments Flow

To view the adjustments for an invoice and create different levels of adjustments in Siebel CRM:

Note:

Siebel UI screenshots are for reference only and may differ from actual screens.

1. Navigate to the Accounts screen and query an account. Scroll down to the Billing profile applet and click the Billing profile Name link.

2. Click the Bills tab to view the list of bills under the account. Click the Bill Number link to open the Bill Details screen.

3. Click the A/R Items tab to view the adjustments for an invoice, as shown in Figure 7-2.

Figure 7-2 Siebel UI - A/R Items

4. In the Bills Detail view, an adjustment request can be captured at the header, item, or event level. Each of these sections in the view has an Adjust button, as shown in Figure 7-3.

Figure 7-3 Siebel UI - Bill Details: Adjust

5. After creating a new adjustment for a particular level and getting the approval, click the Submit button, as shown in Figure 7-4.

Figure 7-4 Siebel UI - Adjustments: Submit

For more information about the mapping of Siebel CRM elements to Oracle BRM elements, see Appendix A, "Mapping Siebel Billing Management UI Elements to Oracle BRM Customer Center."

7.2 QueryAccountBalanceAdjustment Integration Flow

This integration flow uses the following interfaces:

- AdjustmentSiebelCommsReqABCS with operation QueryAdjustment

- QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl

- QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl

Figure 7-5 illustrates the QueryAccountBalanceAdjustment integration scenario.

Figure 7-5 QueryAccountBalanceAdjustment Sequence Diagram

When you initiate the QueryAccountBalanceAdjustment process, the following events occur:

1. In Siebel CRM, navigate to the Billing Profile screen.

2. Navigate to Accounts, query an account, and click the billing profile for the account. On the Billing Profile screen, click the Bill tab to view the list of bills under the account. To open the Bill Detail View screen, click the Bill No link. This opens the Bill details view with the following information: bill summary, service charges, and item charges. Click the A/R Items tab and a web service call is made to get the adjustments specific to this bill for the account.

3. Open an invoice and select the A/R Items tab. A web service call is made to get the adjustment for that invoice.

4. Navigate to the Bill tab and open the Bill Detail View.

5. Select the A/R Items tab. This invokes the AdjustmentSiebelCommsReqABCS web service, which in turn calls AdjustmentSiebelCommsReqABCS with operation QueryAdjustment.
AdjustmentSiebelCommsReqABCS is a generic Siebel adjustment interface service with several operations defined on the AccountBalanceAdjustmentEBO.

6. Invoking AdjustmentSiebelCommsReqABCS with operation QueryAdjustment routes the QueryAdjustmentReqMsg to QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl.

7. The QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl transforms the QueryAdjustmentReqMsg into QueryAccountBalanceAdjustmentList_InputVariable and routes the QueryAccountBalanceAdjustmentListReqMsg to the appropriate billing system.
As delivered, QueryAccountBalanceAdjustmentListReqMsg is routed to QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl.

8. QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl first transforms QueryAccountBalanceAdjustmentListReqMsg into the Invoke_PCM_OP_AR_GET_ACCT_ACTION_ITEMS_InputVariable as input of PCM_OP_AR_GET_ACCT_ACTION_ITEMS and calls BRMARServices with operation PCM_OP_AR_GET_ACCT_ACTION_ITEMS.

9. Invoking BRMARServices with operation PCM_OP_AR_GET_ACCT_ACTION_ITEMS invokes the Oracle BRM application programming interface (API) PCM_OP_AR_GET_ACCT_ACTION_ITEMS and returns the adjustment outputs Invoke_PCM_OP_AR_GET_ACCT_ACTION_ITEMS_OutputVariable to QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl.

10. QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl transforms the Oracle BRM API output Invoke_PCM_OP_AR_GET_ACCT_ACTION_ITEMS_OutputVariable into enterprise business message (EBM) output QueryAccountBalanceAdjustmentListRespMsg and returns it to QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl.

11. QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl then transforms the QueryAccountBalanceAdjustmentListRespMsg into QueryAdjustmentRespMsg, which is returned to AdjustmentSiebelCommsReqABCS.

12. AdjustmentSiebelCommsReqABCS returns the QueryAdjustmentRespMsg to the calling CMUExternalAdjustments as QueryAdjustmentRespMsg.

13. CMUAdjustmentResponseMessage is then written to the Siebel Balance Summary virtual business component (VBC) for the users.

7.3 CreateAccountBalanceAdjustment Integration Flow

This integration flow uses the following interfaces:

- CreateAccountBalanceAdjustmentSiebelCommsReqABCSImpl

- CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl

- UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl

- CreateAccountBalanceAdjustmentListResponseBRMCommsJMSConsumer

- CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer

- CreateAccountBalanceAdjustmentSiebelCommsJMSConsumer

Figure 7-6 illustrates the CreateAccountBalanceAdjustment integration scenario.

Figure 7-6 CreateAccountBalanceAdjustment Sequence Diagram

When you initiate the CreateAccountBalanceAdjustment process, the following events occur:

1. In Siebel CRM, navigate to the Billing Profile screen.

2. Navigate to the Accounts screen, query an account, and click a billing profile for the account. On the Billing Profile screen, the Adjustment tab displays all the adjustment requests.

3. To create an adjustment for an invoice, click the Bills tab.
Select the bill against which an adjustment request must be created.

4. In the Bill Details view, an adjustment request can be captured at the header, item, or event level. Each of these sections in the view has an Adjust button.
Clicking this button creates a new adjustment request at that level.

5. To create an adjustment at the event-level, click the Net Amount link for the required item charge.
This opens the Event Details view to create the adjustment.

6. At the event-level, adjustments can be created for both monetary and nonmonetary resources such as free minutes.

7. You can also create adjustments for unbilled usage.
Unbilled adjustments are applicable only at the event-level for both monetary and nonmonetary resources.

8. The Adjust button on different screens calls the same web service to create the adjustment.
But on the Oracle BRM side, it is based on the adjustment level. The adjustment type is set by Siebel CRM. Based on the value in this column, the correct opcode is called.

9. After creating the new adjustment for a particular level and getting the approval, click the Submit button.
A web service call is made to SWICreateAdjustment, which in turn puts the message into the Queue AIA_CMUREQADJIOJMSQUEUE along with a Simple Object Access Protocol (SOAP) envelope. After submit, the adjustment Status changes to Submitted and the adjustment record becomes read-only. Adjustments are persisted in Siebel CRM and when the adjustments are accepted, the status of the record changes to Posted. If the changes are not approved, the status changes to Not Posted.

10. CreateAccountBalanceAdjustmentSiebelCommsJMSConsumer dequeues the message and transforms it into the Siebel request application business message (ABM) and routes the CreateAdjustmentReqMsg to CreateAccountBalanceAdjustmentSiebelCommsABCSImpl

11. The CreateAccountBalanceAdjustmentSiebelCommsABCSImpl transforms the CreateAdjustmentReqMsg into CreateAccountBalanceAdjustmentList_InputVariable and routes the CreateAccountBalanceAdjustmentList_InputVariable to the appropriate billing system.
As delivered, CreateAccountBalanceAdjustmentList_InputVariable is routed to CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl.

12. CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl first checks the parameters of the Adjustment type coming from the request (Billed or Unbilled) and based on the parameter, PCM_OP_AR_EVENT_ADJUSTMENT is invoked with the appropriate data.

13. After checking the parameters of a particular service from request, the CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl service transforms the CreateAccountBalanceAdjustmentListReqMsg into the Oracle BRM input flist message and invokes the opcode.

14. Invoking Oracle BRM API PCM_OP_AR_EVENT_ADJUSTMENT with account ID, billing profile ID, and event ID returns the list of events associated with items.

15. BRMARServices sends the response back to CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl service with the list of adjustments and status for opcode calls.
The Status field is mapped to the response and goes back to the Siebel CRM user interface (UI).

16. After getting the response back from BRMARService, the status of the adjustment in CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl is checked.
If the status value returns as Fail, an error-handling framework service is called. This error-handling framework service calls the different error-handling services and logs the error for that particular failed adjustment request in the Admin Console.

17. Administrators can see the status of the particular failed adjustment request, adjustment ID, and integration ID of that particular request.
Administrators can also get the Oracle BRM description for a failed request.

18. CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl then takes the response from the service, transforms Invoke_Event_PCM_OP_AR_EVENT_ADJUSTMENT_OutputVariable to the CreateAccountBalanceAdjustmentListRespMsg, and routes it to the CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer.

19. CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer then puts the message into the queue AIA_CRTADJLSTRSPJMSQUEUE.

20. CreateAccountBalanceAdjustmentListResponseBRMCommsJMSConsumer picks the message from AIA_CRTADJLSTRSPJMSQUEUE and routes the CreateAccountBalanceAdjustmentListResponseMsg to UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl.

21. UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl transforms the CreateAccountBalanceAdjustmentListRespMsg into SWISIAAdjustmentIO and invokes the Siebel Update web service with this message.

Note:

In the case of billed adjustments at the Bill and Item levels, the BRM provider calls PCM_OP_AR_BILL_ADJUSTMENT and PCM_OP_AR_ITEM_ADJUSTMENT opcodes.

7.4 Oracle BRM Interfaces

The QueryAdjustment integration flow uses:

- BRMARServices with operation PCM_OP_AR_GET_ACCT_ACTION_ITEMS

The CreateAdjustment integration flow uses:

- BRMARServices with operation PCM_OP_AR_EVENT_ADJUSTMENT

For more information, see See Oracle Communications Billing and Revenue Management Opcode Flist Reference.

7.5 Siebel CRM Interfaces

The Adjustment integration flow uses these Siebel CRM interfaces:

- SWICreateAdjustment: To submit the adjustment

- SWIAdjustmentStatusUpdate: To update the adjustment

For more information, see the Siebel Order Management Guide Addendum for Communications, "Web Services Reference."

7.6 Industry Oracle AIA Components

The Adjustment integration uses the following delivered enterprise business objects (EBOs) and enterprise business messages (EBMs):

- AccountBalanceAdjustmentEBO

- QueryAccountBalanceAdjustmentListEBM

- QueryAccountBalanceAdjutsmentListResponseEBM

- CreateAccountBalanceAdjustmentListEBM

- CreateAccountBalanceAdjustmentListResponseEBM

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located under the Metadata Services (MDS) repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/

The industry enterprise business service (EBS) WSDL files are located under the MDS repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/

For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in the Oracle Enterprise Repository (OER).

For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.

7.7 Integration Services

These services are delivered with the Adjustment Integration flow:

- AdjustmentSiebelCommsReqABCS

- QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl

- QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl

- CreateAccountBalanceAdjustmentSiebelCommsABCSImpl

- CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl

- UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl

- CreateAccountBalanceAdjustmentListResponseBRMCommsJMSConsumer

- CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer

- CreateAccountBalanceAdjustmentSiebelCommsJMSConsumer

Some of these services have been enabled to use Session Pool Manager.

For more information about Session Pool Manager, see Oracle Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide, "Session Pool Manager."

7.7.1 AdjustmentSiebelCommsReqABCS

AdjustmentSiebelCommsReqABCS exposes the following operation related to Account Balance Adjustment on the Siebel ABM:

QueryAdjustment:

Routes QueryAdjustmentReqMsg to the provider implementation service
Routes QueryAdjustmentRespMsg to the requester

Figure 7-7 illustrates the relationship of AdjustmentSiebelCommsReqABCS with the other services in the integration flow.

Figure 7-7 AdjustmentSiebelCommsReqABCS

7.7.2 QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl

QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl transforms the Siebel message into the AccountBalanceAdjustmentEBM and calls the provider to get the Adjustment response from the billing system. It then transforms the AccountBalanceAdjustmentEBM response back to a Siebel message and returns it to the calling Siebel web service.

Figure 7-8 illustrates the relationship of QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl with the other services in the integration flow.

Figure 7-8 QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl

7.7.3 QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl

QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl transforms the AccountBalanceAdjustmentEBM message into an Oracle BRM API input format message and calls the API to get the adjustment details from the billing system. It then transforms the output from the API back to an AccountBalanceAdjustmentEBM message and returns it to the calling service.

Figure 7-9 illustrates the relationship of QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl with the other services in the integration flow:

Figure 7-9 QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl

7.7.4 CreateAccountBalanceAdjustmentSiebelCommsABCSImpl

CreateAccountBalanceAdjustmentSiebelCommsABCSImpl transforms the Siebel message into an AccountBalanceAdjustmentEBM message format and calls the provider to create the adjustment and get the response from the billing system. It then transforms the EBM response message to a Siebel message and routes it back to the AdjustmentSiebelCommsReqABCS service WSDL.

7.7.5 CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl

CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl transforms the AccountBalanceAdjustmentListEBM into an Oracle BRM API input format and calls the APIs to get the bill, item charge, and event details or Resource Impact Event adjustments from the billing system. It then transforms the output from the APIs back to an AccountBalanceAdjustmentListResponseEBM format that returns it to the calling service.

7.7.6 UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl

UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl transforms the AccountBalanceAdjustmentListResponseEBM into Siebel web service input formats and calls the web service to update the adjustment status.

This service is SPM enabled.

For more information about Session Pool Manager, see Oracle Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide, "Session Pool Manager."

7.7.7 CreateAccountBalanceAdjustmentListResponseBRMCommsJMSConsumer

This service picks the message from the queue AIA_CRTADJLSTRSPJMSQUEUE and routes the CreateAccountBalanceAdjustmentListResponseMsg to UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl.

7.7.8 CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer

This process gets the CreateAccountBalanceAdjustmentListResponseEBM message from CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl and puts the message into the Queue AIA_CMUREQADJIOJMSQUEUE.

7.7.9 CreateAccountBalanceAdjustmentSiebelCommsJMSConsumer

This process picks the message with a SOAP envelope from the queue AIA_CMUREQADJIOJMSQUEUE, transforms the message into a Siebel Requestor ABM by opening the SOAP envelope, and calls the CreateAccountBalanceAdjustmentSiebelCommsABCSImpl with the ListOfCmuRequestAdjustmentIO message.

8 Understanding the Process Integration for Collections Management

This chapter provides an overview of the collections integration flows and discusses Oracle Billing and Revenue Management (Oracle BRM) and Siebel Customer Relationship Management (Siebel CRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services

This chapter includes the following sections:

- Section 8.1, "Process Integration for Collections Management Overview"

- Section 8.2, "Collections Management Business Process Flow"

- Section 8.3, "Solution Assumptions and Constraints"

- Section 8.4, "Sync Collection Scenarios and Actions Integration Flow"

- Section 8.5, "Sync Collection Actions Status Integration Flow"

- Section 8.6, "Oracle BRM Interfaces"

- Section 8.7, "Siebel CRM Interfaces"

- Section 8.8, "Industry Oracle AIA Components"

- Section 8.9, "Integration Services"

8.1 Process Integration for Collections Management Overview

Collections management is a process to collect money from subscribers after the grace period provided to pay the dues is over. If payment is not made after the grace period, service providers may choose to remind the subscribers at first with a letter or a phone call. If these contact methods fail, service providers may decide to take actions such as inactivating the service.

The process integration for collections management provides synchronization of collection actions based on specified collection scenarios between Oracle Billing and Revenue Management (Oracle BRM) and Siebel Customer Relationship Management (Siebel CRM) and administration of these collection actions and credit alerts.

Oracle BRM is responsible for generating collection actions and Siebel CRM is responsible for performing these actions. But in some cases, Oracle BRM performs these actions.

The collections management business process covers the entire collections life cycle across Oracle BRM and Siebel CRM. The business administrator defines a collection scenario and associates the scenario with a sequence of actions that must be performed. The collections daily batch process identifies bill units that require some action to be taken. The collections actions are synchronized to Siebel CRM in the form of credit.

The process integration for collections management consists of these integration flows:

- Sync Collection Scenarios and Actions integration flow.

- Sync Collection Actions Status integration flow.

8.2 Collections Management Business Process Flow

Figure 8-1 illustrates the overall flow for the process integration for collections management.

Figure 8-1 Collections Management Business Process Flow

8.3 Solution Assumptions and Constraints

These are the assumptions and constraints for the process integration for collections management:

1. The invoice number is a mandatory attribute in the Credit Alert object in Siebel CRM.
Because the invoice number is not sent from Oracle BRM as part of the notification event to transform it into a credit alert, Siebel CRM creates a dummy invoice in Siebel CRM.

2. A credit alert also needs the amount and currency value. This allows a customer service representative (CSR) or a collection agent to prioritize the subscribers they must follow up on to recover money.
A default 0 (zero) amount is set in Oracle Application Integration Architecture (Oracle AIA) for the alerts for which Oracle BRM does not send the amount due.

3. While you are creating a credit alert, a default agreement association is not provided at the credit alert-level, it is provided at the account-level.

4. A payment arrangement plan facility (promise to pay) is not available in this release, because it is not supported in Oracle BRM.

5. The integration supports multiple billing systems, with the assumption that a given Siebel CRM billing profile is mapped or synchronized to a single billing system. With this assumption, the out-of-the-box credit alert status update flow from Siebel CRM to billing routes updates back to the appropriate billing system. However, the inbound Oracle Data Integrator (ODI)-based flow that synchronizes credit alerts from Oracle BRM to Siebel CRM requires some manual adjustments (cloning of ODI artifacts and other design-time changes) for each additional billing system that gets added.
For more information about configuring multiple billing systems, see the Oracle Application Integration Architecture Oracle Communications Order to Cash Integration Pack Implementation Guide for Siebel CRM, Oracle Order and Service Management, and Oracle Billing and Revenue Management, "Appendix F: Configuring Multiple Instances of Oracle BRM."

For more information, see "Understanding the Process Integration for Billing Management," Section 2.3, "Solution Assumptions and Constraints."

6. Comprehensive reports generation is the responsibility of Siebel CRM.

7. Siebel Enterprise Integration Manager (EIM) tables are intermediate database tables that act as staging areas between the base tables in the Siebel database and other databases.
To achieve and maintain high performance, the database memory area must be large enough to hold most of the frequently accessed data in the cache.

8.4 Sync Collection Scenarios and Actions Integration Flow

This section provides an overview of the Sync Collection Scenarios and Actions integration flow and discusses how to:

- Configure and generate data in Oracle BRM.

- Pick up and transform the data.

- Configure and run the Sync Collection Scenarios and Actions integration flow.

8.4.1 Time Zone Handling

Oracle AIA does not do a time-zone conversion when synchronizing credit alerts from Oracle BRM to Siebel CRM. Oracle BRM publishes datetimes in Oracle BRM local server time.

8.4.2 Understanding Sync Collection Scenarios and Actions Integration Flow

The Sync Collection Scenarios and Actions integration enables the transfer of collection data in batch mode from the Oracle BRM database views to the EIM tables. This integration uses Oracle Data Integrator (ODI) to transfer the data from Oracle BRM to Siebel CRM.

8.4.2.1 Business Process Flow for the Sync Collection Scenarios and Actions Integration

Figure 8-2 illustrates the Sync Collection Scenarios and Actions integration flow.

Figure 8-2 Sync Collection Scenarios and Actions Integration Business Process Flow

When you initiate this process, the following events occur

1. Oracle BRM provides two database views, COLL_ACTION_IF_VIEW, which contains all the Collection Action data (for example, to send dunning letter), and COLL_SCENARIO_IF_VIEW, which contains the status of billing profiles (for example, Entered Collections or Exited Collections).

2. When the ODI batch synchronization process is triggered, the SyncCollectionAction ODI process first reads the properties (batch size) from the AIAConfigurationProperties.xml file.

3. Then the SyncCollectionAction process triggers an ODI interface that reads data from COLL_ACTION_IF_VIEW and enriches the data by performing a cross-reference and domain value map (DVM) lookup and by querying Siebel base tables.

4. Next the process triggers an ODI interface that reads data from COLL_SCENARIO_IF_VIEW and enriches the data by performing cross-reference and DVM lookup and by querying Siebel base tables.

5. In the previously mentioned interfaces, the AccountID and BillingProfileID columns are enriched using cross-reference data. The Currency Code, Action Name, Priority, and similar columns are enriched using DVMs.

6. The enriched data is mapped to the EIM_ALERT_CUT table. For every row inserted in the EIM tables, the value of the column IF_ROW_STAT is set to FOR_IMPORT.

7. Another ODI interface then takes records that have Entered Collections and Exited Collections rows from the EIM_ALERT_CUT table and writes the data to the EIM_ACCNT_PROF table. This data is responsible for changing the status of Billing Profile.

Table 8-1 Work Locations

Work Location

Step

Oracle BRM

1. Collection actions are generated and stored in a database view.

Integration Process (ODI)

2. Integration flow reads the messages from the Oracle BRM database view.

3. Data is picked from Oracle BRM, gets enriched by cross-references and DVM lookup, and is inserted into the Siebel EIM tables.

Siebel CRM

4. Siebel CRM runs a batch job to move data from the EIM table to the Base table and creates credit alerts.

5. Update the billing profile if required.

8.4.2.2 Design Assumptions and Constraints

These are the assumptions and constraints for the Sync Collection Scenarios and Actions integration:

1. Oracle BRM collection messages are stored in Oracle BRM tables, which can be queried from Oracle BRM database views.

2. No cross-reference for the Collections Action ID exists.
The Oracle BRM Portal Object (POID) for the collections action ID is sent to Siebel CRM as the integration ID.

8.4.3 Configuring and Generating Data in Oracle BRM

This section discusses how to:

- Configure the data in Oracle BRM.

- Generate the data in Oracle BRM.

8.4.3.1 Configuring the Data in Oracle BRM

To configure Oracle BRM:

1. Create the database views and indexes on the collections tables to enable Oracle AIA to retrieve data. There are two views:
COLL_ACTION_IF_VIEW: This view contains all the Collection Action data.

COLL_SCENARIO_IF_VIEW: This view contains the status of the billing profiles.

2. Configure the pin_collections_process to generate a file with the utility's start time and end time:

1. Open the pin_collections_process configuration file (BRM_Home/apps/pin_collections/pin.conf) in a text editor.

2. Add the following entry to the file: - pin_collections_process file_name_prefix FilePrefix
Where FilePrefix specifies the file name prefix for the generated text file. The default value is pin_collections.

For more information about the pin_collections_process, see Oracle Communications Billing and Revenue Management Collections Manager Guide, "Collections Manager Utilities."

3. Save and close the file.

When you configure pin_collections_process to generate a text file, it records the start and end time in the following format:

pin_collections_process started at: StartTime
pin_collections_process started at: EndTime

For example:

pin_collections_process started at: 1298592024
pin_collections_process started at: 1298592025

3. Configure Collection Actions in Oracle BRM using the Collections Configuration tool.
For more information, see Oracle Communications Billing and Revenue Management Collections Configuration Online Help.

8.4.3.2 Generating the Data in Oracle BRM

The following steps illustrate how Oracle BRM generates the collections data:

1. Run the pin_collections_process utility.
One of the following collections activities occurs:

- An account enters or exits collections.

- A collections action object is created.

- A collections action's status is updated in Oracle BRM.

- A manual collections action is required.

- Oracle BRM creates a /schedule object.

2. The views COLL_ACTION_IF_VIEW and COLL_SCENARIO_IF_VIEW are updated with the most recent collections data.

For more information, see Oracle Communications Billing and Revenue Management Concepts Guide, "Using BRM with Oracle Application Integration Architecture."

8.4.4 Picking Up and Transforming the Data

This process integration uses ODI to pick up the data from the Oracle BRM database view, transform it, and load it into the Siebel CRM EIM tables.

Figure 8-3 illustrates the process:

Figure 8-3 Transformation of Data

These tasks are performed as a part of the data load process:

1. When the ODI batch sync process is triggered, an ODI interface reads data from the COLL_ACTION_IF_VIEW BRM view.

2. The columns AccountID and BillingProfileID are enriched by cross-reference data. The columns Currency Code, Action Name, PriorityStatus, and SubStatus are enriched by DVMs.

3. The enriched data is mapped to the Siebel EIM_ALERT_CUT table.

4. An ODI Interface reads data from the COLL_SCENARIO_IF_VIEW Oracle BRM View.

5. The columns AccountID and BillingProfileID are enriched by cross-reference data. The columns Currency Code, Action Name, PriorityStatus, and SubStatus are enriched by DVMs.

6. The enriched data is mapped to the Siebel EIM_ALERT_CUT table.

7. The Entered Collections and Exited Collections rows are taken from the EIM_ALERT_CUT table and written to the EIM_ACCNT_PROF table. This data is responsible for changing the status of Billing Profile.

8. For every row inserted in the EIM tables, the value of the column IF_ROW_STAT is set to FOR_IMPORT.

Note:

Before ODI loads the enriched collection data into the Siebel EIM tables, it perform data cleansing. All existing records that were successfully imported into the Siebel base table are deleted from the EIM tables.

8.4.5 Configuring and Running the Sync Collection Scenarios and Actions Integration

This section discusses how to:

- Configure the Sync Collection Scenarios and Actions integration.

- Run the Sync Collection Scenarios and Actions integration.

8.4.5.1 Configuring the Sync Collection Scenarios and Actions Integration

After you have installed the process integration for collections management, based on the requirement, you may want to change the default value of the below parameters to suit your implementation requirement. To change the default value, open the AIAConfigurationProperties.xml file that is available in the <AIA_INSTANCES>/config folder.

For more information about reloading updates to AIAConfigurationProperties.xml, see the Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Building AIA Integration Flows."

These properties are specific to the collections integration process and available in the AIAConfiguration.xml file:

- BatchSize

- Default.SystemID

- IF_ROW_BATCH_NUM_CreatedStart

- IF_ROW_BATCH_NUM_CreatedEnd

- IF_ROW_BATCH_NUM_UpdateStart

- IF_ROW_BATCH_NUM_UpdateEnd

- IF_ROW_BATCH_NUM_Error

- AL_SOURCE_CD

- AL_TYPE_CD

- AIAHome

For more information about these properties, see Chapter 10, "Configuring the Process Integration for Collections Management."

8.4.5.2 Running the Sync Collection Scenarios and Actions Integration

On running the collection process in Oracle BRM, a file '<filename>_<timestamp> is created and written into the same directory. This file has the start and end timestamp of the most recent collection run, for example:

pin_collections_process started at: 1299794311

pin_collections_process ended at: 1299794315

To run the Sync Collection Scenarios and Actions integration, the following command, based on your environment, must be run at the <ODI_HOME>/oracledi/agent/bin path location on the Oracle AIA system:

In a Linux environment:

./startscen.sh SYNCCOLLECTIONACTION 001 GLOBAL
"GLOBAL.Coll_StartTime=<Start_Time_Stamp>"
"GLOBAL.Coll_EndTime=<End_Time_Stamp>"

In a Windows environment:

startscen.bat SYNCCOLLECTIONACTION 001 GLOBAL
"GLOBAL.Coll_StartTime=<Start_Time_Stamp>"
"GLOBAL.Coll_EndTime=<End_Time_Stamp>"

For this command, ODI_HOME is the path of ODI home.

To ensure that ODI picks up the collection data (new or delta) from the most recent run, Start_Time_Stamp and End_Time_Stamp in the above commands must be substituted with the timestamps that are available in the file created after the latest collection run in Oracle BRM.

Note:

Make sure that Java home is set in the path before you run this command by running the source <aia.home>/bin/aiaenv.sh command.

8.5 Sync Collection Actions Status Integration Flow

This integration flow synchronizes the status of a collection action from Siebel CRM to Oracle BRM. The customer service representative (CSR) can set the status of a collection action to Closed and click the Sync Status button. After this action, Siebel CRM invokes Oracle AIA web services, which in turn invokes an Oracle BRM opcode. The Oracle BRM opcode updates the status of the given collection action in Oracle BRM.

This integration flow uses the following services:

- UpdateCreditAlertSiebelCommsReqABCSImpl with operation UpdateCreditAlert

- UpdateCreditAlertBRMCommsProvABCSImpl with operation UpdateCreditAlert

Figure 8-4 illustrates the Sync Collections Actions Status integration scenario.

Figure 8-4 Sync Collections Actions Status from Siebel CRM to Oracle BRM Sequence Diagram

When you initiate the Sync Collections Actions Status process, the following events occur:

1. Siebel CRM invokes Oracle AIA UpdateCreditAlertSiebelCommsReqABCSImpl with operation UpdateCreditAlert (fire and forget design pattern) with the following data:

- Action alert ID (unique identifier for each credit alert in Siebel CRM)

- Integration ID (POID of Collections Action ID)

- Status (Closed)

- Billing profile ID

2. UpdateCreditAlertSiebelCommsReqABCSImpl transforms Credit Alert Status Siebel application business message (ABM) ListOfSWICUTCreditManagementIO to UpdateCreditAlertListEBM and routes the message to UpdateCreditAlertBRMCommsProvABCSImpl in fire and forget mode.

3. UpdateCreditAlertBRMCommsProvABCSImpl does a lookup for the billing profile Id to determine the corresponding BRM ID. This process also determines the appropriate end point of the target Oracle BRM system based on the target Id.

8.6 Oracle BRM Interfaces

The Sync Collections Actions Status integration flow uses this interface of Oracle BRM:

- PCM_OP_COLLECTIONS_SET_ACTION_STATUS

For more information, see See Oracle Communications Billing and Revenue Management Opcode Flist Reference.

8.7 Siebel CRM Interfaces

The Sync Collections Actions Status integration flow uses this Siebel CRM interface:

- Outbound web service UpdateCreditAlertSiebelCommsReqABCSImplServicePort operation UpdateCreditAlert

For more information, see the Siebel Order Management Guide Addendum for Communications, "Web Services Reference."

8.8 Industry Oracle AIA Components

The Sync Collections Actions Status integration uses the following delivered enterprise business objects (EBOs) and enterprise business messages (EBMs):

- CreditAlertEBO

- UpdateCreditAlertListEBM

The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located under the Metadata Services (MDS) repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/

The industry enterprise business service (EBS) WSDL files are located under the MDS repository at: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/

For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in the Oracle Enterprise Repository (OER).

For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."

EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.

8.9 Integration Services

These services are delivered with the Sync Collections Actions Status integration flow:

- UpdateCreditAlertSiebelCommsReqABCSImpl

- UpdateCreditAlertBRMCommsProvABCSImpl

8.9.1 UpdateCreditAlertSiebelCommsReqABCSImpl

UpdateCreditAlertSiebelCommsReqABCSImpl is a Business Process Execution Language (BPEL) process. It performs the following actions:

- Receives Siebel Credit Alert ABM containing billing profile ID, credit alert ID, integration ID, and status.

- Transforms the ABM to UpdateCreditAlertListEBM.

8.9.2 UpdateCreditAlertBRMCommsProvABCSImpl

The UpdateCreditAlertBRMCommsProvABCSImpl receives the UpdateCreditAlertListEBM and then transforms the UpdateCreditAlertListEBM to the BRM PCM_OP_COLLECTIONS_SET_ACTION_STATUS flist.

It then invokes the BRM PCM_OP_COLLECTIONS_SET_ACTION_STATUS opcode with this flist and then updates the status for the credit alert (or collection action) to Closed in Oracle BRM.

Figure 8-5 illustrates the data transformation flow.

Figure 8-5 Data Transformation Flow

Part II

Implementing the Delivered Integrations

Part II includes the following chapters:

- Chapter 9, "Configuring the Process Integration for Billing Management"

- Chapter 10, "Configuring the Process Integration for Collections Management"

9 Configuring the Process Integration for Billing Management

This chapter discusses how to set up Oracle Billing and Revenue Management (Oracle BRM) and Siebel Customer Relationship Management (Siebel CRM). In addition, it discusses how to work with domain value maps (DVMs) and cross-references, how to handle errors, and how to configure the process integration for billing management.

This chapter includes the following sections:

- Section 9.1, "Setting Up Oracle BRM"

- Section 9.2, "Setting Up Siebel CRM"

- Section 9.3, "Working with DVMs"

- Section 9.4, "Working with Cross-References"

- Section 9.5, "Handling Errors"

- Section 9.6, "Configuring the Process Integration for Billing Management"

9.1 Setting Up Oracle BRM

This section describes how to set up Oracle BRM.

To set up Oracle BRM:

- Configure the Oracle BRM JCA adapter.
For more information about how to configure the Oracle BRM JCA adapter, see the JCA Resource Adapter Guide, "Deploying and Configuring the Oracle BRM JCA Resource Adapter."

- To ensure that resource balances with infinite effectivity show a null date (instead of 31-Dec-1969/01-Jan-1970), the Oracle BRM JCA parameter ZeroEpochAsNull (in JCA Resource Adapter connection factory) must be set to True. This setting is required for the flow to work correctly.
For more information about the behavior of effective dates based on the Oracle BRM JCA parameter, see the JCA Resource Adapter Guide, "Deploying and Configuring the BRM JCA Resource Adapter."

- The InteractionTimeZone parameter in the JCA Adapter controls the time zone conversion for dates that are returned by Oracle BRM because of billing queries. If the intent is to display in Siebel CRM billing dates the same as the billing system server time, then the InteractionTimeZone parameter must be set to the time zone of the Oracle BRM server.
For more information about the InteractionTimeZone parameter, see the JCA Resource Adapter Guide, "Deploying and Configuring the BRM JCA Resource Adapter."

9.2 Setting Up Siebel CRM

For some Siebel CRM interfaces, in Siebel, you must set the process property UTCCanonical to Y.

For more information about which Siebel CRM interfaces require you to enable the UTCCanonical process property, see instructions for ACR 474 and ACR 508 in the Siebel Maintenance Release Guide.

Perform the following AQ configuration:

- For the CreateAdjustment flow: Configure the SWICreateAdjustment Siebel outbound workflow to enqueue the Siebel messages in AIA_CMUREQADJIOJMSQUEUE.

For more information about Siebel side configuration, see Transports and Interfaces: Siebel Enterprise Application Integration v8.1, Process of Configuring JMS Messaging Between Siebel Business Applications and Oracle SOA Suite.

For more information about the corresponding Oracle AIA side configuration, see the Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack.

9.3 Working with DVMs

Domain value maps (DVMs) are a standard feature of the Oracle service-oriented architecture (SOA) Suite that enable you to equate lookup codes and other static values across applications, for example, FOOT and FT or US and USA.

DVMs are static in nature, though administrators can add maps as required. Transactional business processes never update DVMs-they only read from them. They are stored in XML files and cached in memory at run time.

DVM types are seeded for the Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care flows. Administrators can extend the list of mapped values by adding more maps.

Table 9-1 lists the DVMs for the process integration for billing management.

Table 9-1 Billing Management Integration - DVMs

DVM

Description

CURRENCY_CODE

Currency codes.

RESOURCE

Nonmonetary resources (Free Minutes, Text Messages, and so on).

ACCOUNTBALANCEADJUSTMENT_REASON

Reason for adjustment.

ACCOUNTBALANCEADJUSTMENT_STATUS

Status of adjustment request (Posted, Not-Posted).

ACCOUNTBALANCEADJUSTMENT_TYPE

Type of adjustment (Credit, debit, and so on).

ACCOUNTBALANCEADJUSTMENT_TAXTREATMENT

Tax treatment on adjustment amount (Include, Exclude).

ACCOUNTBALANCEADJUSTMENT_ USAGEALLOCATION_TAXTREATMENT

Tax treatment on CDR adjustment amount (Include, Exclude).

INSTALLEDPRODUCT_STATUS

Status of installed product (Active, Canceled, and so on).

RECIEVEDPAYMENT_TYPE

Type of payment (Credit, Direct Debit).

ACCOUNTBALANCEADJUSTMENT_SUBSTATUS

Sub-status of adjustment request.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with Message Transformations," Working with DVMs and Cross-References.

9.4 Working with Cross-References

Cross-references map and connect the records within the application network, and they enable these applications to communicate in the same language. The integration server stores the relationship in a persistent way so that others can refer to it.

Table 9-2 contains the billing management integration cross-references.

Table 9-2 Billing Management Integration - Cross-References

Name

Columns

Mapping Details

Description

CUSTOMERPARTY_ACCOUNTID

SEBL_01,COMMON,BRM_01

Set up as part of customer sync

Query

CUSTOMERPARTY_BILLPROFILEID

SEBL_01,COMMON,BRM_01

Set up as part of customer sync

Query

9.5 Handling Errors

Based on the roles defined for the services, e-mail notifications are sent if a service ends due to an error.

Table 9-3 lists the error messages provided by the process integration for billing management.

Table 9-3 Billing Management Integration - Error Messages

Integration/Service Name

Error Code

Message Text

Account Balance / QueryBalanceSummarySiebel ReqABCSImpl

Query Invoice List / QueryInvoiceListSiebelCommsReqABCSImpl

AIA_ERR_AIACOMBMPI_0003

Billing Profile BPName for the account does not exist in the billing system.

1) To correct the error, submit a sales order with this billing profile.

2) Ensure that the sales order created with this billing profile is successfully submitted to the billing system.

Create Payment / CreateReceivedPaymentBRMCommsProvABCSImpl

AIA_ERR_AIACOMBMPI_0005

BRM Error Message (For example, Service Unavailable)

9.5.1 Describing Delivered Error Notification Roles and Users

The following roles and users are delivered as default values for issuing error notifications for the process integration for billing management.

Actor roles and users:

- Role: AIAIntegrationAdmin

- User: AIAIntegrationAdminUser
The default password set for all users is welcome1.

For more information about setting up error notifications using these values, see Oracle Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack, "Using Error Notifications" and "Using Trace and Error Logs."

9.6 Configuring the Process Integration for Billing Management

Configure these properties in the AIAConfigurationProperties.xml file. The file is located in <AIA_INSTANCES>/config/. Entries in the AIAConfigurationProperties.xml file are case-sensitive.

For more information about reloading updates to AIAConfigurationProperties.xml, see the Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Building AIA Integration Flows."

These Business Process Execution Language (BPEL) processes have entries listed in Table 9-4.

- QueryBalanceSummarySiebelCommsReqABCSImpl

- QueryCustomerPartyListBRMCommsProvABCSImpl

- QueryBalanceGroupListSiebelCommsReqABCSImpl

- QueryBalanceDetailsSiebelCommsReqABCSImpl

- QueryBalanceGroupServicesSiebelCommsReqABCSImpl

- QueryInstalledProductListBRMCommsProvABCSImpl

- QueryInvoiceListSiebelCommsReqABCSImpl

- QueryInvoiceListBRMCommsProvABCSImpl

- QueryInvoiceSiebelCommsReqABCSImpl

- QueryInvoiceEventDetailsSiebelCommsReqABCSImpl

- SearchInvoiceEventDetailsSiebelCommsReqABCSImpl

- QueryInvoiceBalanceDetailsSiebelCommsReqABCSImpl

- QueryUnbilledUsageSiebelCommsReqABCSImpl

- QueryServiceUsageListBRMCommsProvABCSImpl

- QueryUnbilledUsageEventDetailsSiebelCommsReqABCSImpl

- SearchUnbilledUsageEventDetailsSiebelCommsReqABCSImpl

- QueryUnbilledUsageBalanceDetailsSiebelCommsReqABCSImpl

- CreatePaymentSiebelCommsReqABCSImpl

- CreateInvoicePaymentSiebelCommsReqABCSImpl

- CreateReceivedPaymentBRMCommsProvABCSImpl

- QueryPaymentSiebelCommsReqABCSImpl

- QueryInvoicePaymentSiebelCommsReqABCSImpl

- SearchPaymentSiebelCommsReqABCSImpl

- QueryReceivedPaymentListBRMCommsProvABCSImpl

- QueryAccountBalanceAdjustmentSiebelCommsReqABCSImpl

- QueryAccountBalanceAdjustmentBRMCommsProvABCSImpl

- CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl

Table 9-4 BPEL Process Property Values - 1

Property Name

Value/Default Value

Description

ABCSExtension.PreXform<ABM/EBM Name>TO<EBM/ABM Name>

true/false

Default value is false. Controls whether the extension point before transformation of application business message (ABM) to enterprise business message (EBM) is invoked during processing.

ABCSExtension.PreInvoke<PartnerLinkName>

true/false

Default value is false. Controls whether the extension point before invocation to enterprise business service (EBS) is invoked during processing.

ABCSExtension.PostXform<EBM/ABM Name>to<ABM/EBM Name>

true/false

Default value is false. Controls whether the extension point before transformation of EBM to ABM is invoked during processing.

ABCSExtension.PostInvoke<PartnerLinkName>

true/false

Default value is false. Controls whether the extension point before invocation of callback service or response return is invoked during processing.

Routing.<Partnerlinkname>.RouteToCAVS

true/false

Default value is false. Controls whether the Composite Application Validation System (CAVS) is used to handle the request.

Default.SystemID

Valid string

Specifies the name of the default systemID of the requester application.

Routing.partnerlinkname.BRM_01.EnpointURI

eis/BRM

Specifies the JNDI entry for the partner link.

EBSOverride.<EBS Name>.<operationname>.PortType

Valid string

PortType of the webservice that needs to be invoked dynamically. This value should be in consistent w.r.t to the Address property mentioned below.

EBSOverride.<EBS Name>.<operationname>.ServiceName

Valid string

ServiceName of the webservice that needs to be invoked dynamically. This value should be in consistent w.r.t to the Address property mentioned below.

EBSOverride.<EBS Name>.<operationname>.Address

Valid string

This property is used to dynamically invoke any webservice from this service. This holds the address.endpoint URI of the webservice that needs to be invoked dynamically. To invoke CAVS or any other provider ABCS, this property needs to be updated accordingly.

BRM.Payment.Command

0

This property is specific to CreateReceivedPaymentBRMCommsProvABCSImpl.

Routing.CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer.EndpointURI

Valid string

Endpoint URL of the CreateAccountBalanceAdjustmentListResponseBRMCommsJMSProducer. (This property is specific to CreateAccountBalanceAdjustmentBRMCommsProvABCSImpl.

These BPEL processes have entries listed in Table 9-5.

- CreateAccountBalanceAdjustmentSiebelCommsReqABCSImpl

- UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl

Table 9-5 BPEL Processes Property Values - 2

Property Name

Value/Default Value

Description

ABCSExtension.PreXform<ABM/EBM Name>TO<EBM/ABM Name>

true/false

Default value is false. Controls whether the extension point before transformation of ABM to EBM is invoked during processing.

ABCSExtension.PreInvoke<PartnerLinkName>

true/false

Default value is false. Controls whether the extension point before invocation to enterprise business service (EBS) is invoked during processing.

Routing.<Partnerlinkname>.RouteToCAVS

true/false

Default value is false. Controls whether the CAVS is used to handle the request

Default.SystemID

Valid string

Specifies the name of the default systemID of the requester application

EBSOverride.<EBS Name>.<operationname>.PortType

Valid string

PortType of the webservice that needs to be invoked dynamically. This value should be in consistent w.r.t to the Address property mentioned below.

EBSOverride.<EBS Name>.<operationname>.ServiceName

Valid string

ServiceName of the webservice that needs to be invoked dynamically. This value should be in consistent w.r.t to the Address property mentioned below.

EBSOverride.<EBS Name>.<operationname>.Address

Valid string

This property is used to dynamically invoke any webservice from this service. This holds the address.endpoint URI of the webservice that needs to be invoked dynamically. To invoke CAVS or any other provider ABCS, this property needs to be updated accordingly.

Routing.SWIAdjustmentStatusUpdate.SEBL_01.EndpointURI

Valid string

Siebel endpoint URIL. (This property is specific to UpdateAccountBalanceAdjustmentRespSiebelCommsProvABCSImpl.)

10 Configuring the Process Integration for Collections Management

This chapter discusses how to set up Oracle Billing and Revenue Management (Oracle BRM) and Siebel Customer Relationship Management (Siebel CRM). In addition, it discusses how to work with domain value maps (DVMs) and cross-references, how to handle errors, and how to configure the process integration for collections management.

This chapter includes the following sections:

- Section 10.1, "Setting Up Oracle BRM"

- Section 10.2, "Setting Up Siebel CRM"

- Section 10.3, "Working with DVMs"

- Section 10.4, "Working with Cross-References"

- Section 10.5, "Handling Errors"

- Section 10.6, "Configuring the Process Integration for Collections Management"

10.1 Setting Up Oracle BRM

To set up Oracle BRM:

1. Specify pay types to process.

2. Set the minimum overdue balance to process.

3. Set the number of bill units retrieved during step searches.

4. Set up invoice reminders.

5. Define collections features.

6. Configure how Collections Manager determines dates.
For more information, see Oracle Communications Billing and Revenue Management Collections Manager Guide, "Setting up Collections Manager."

7. Create views on Oracle BRM and configure pin_collections_process to record start and end time.

10.1.1 Setting up Collection Action Names in Oracle BRM

As stated in Section 8.1, "Process Integration for Collections Management Overview," the process integration for collection management synchronizes collection actions between Oracle BRM and Siebel CRM. The collection actions are mapped to Siebel CRM as credit alerts using the DVM COLLECTION_ACTIONNAME.xml.

As delivered, DVM mappings exist for the following collections actions:

- Impose Late Fee

- Courtesy Phone Call

- Courtesy Email or SMS Reminder

- Courtesy Dunning Letter

- Demanding Phone Call

- Inactivate Services of Billinfo

- Harsh Dunning Letter

- Refer to outside agency

- Writeoff Billinfo

- Close Services of Billinfo

- Inactivate the Account

Of the 11 collections actions, these 4 collections actions are seeded in Oracle BRM and are available as part of the product installation.

- Inactivate Services of Billinfo

- Close Services of Billinfo

- Writeoff Billinfo

- Refer to outside agency

Before you use the process integration, the implementer has the option of either adding these remaining 7 collection actions in Oracle BRM or run the collection integration process with the 4 seeded values listed previously. If the implementer's intent is to add these additional collection actions, then they must be entered manually in the Oracle BRM Collection Manager:

- Impose Late Fee

- Courtesy Phone Call

- Courtesy Email or SMS Reminder

- Courtesy Dunning Letter

- Demanding Phone Call

- Harsh Dunning Letter

- Inactivate the Account

Caution:

Use caution when manually entering these action names in Oracle BRM because any change in spelling or case breaks the Sync Collection Action integration flow. The DVM lookup fails due to a mismatch of strings.

Note:

If the intent of the implementer is to use new or different collection action names, then explicit changes must be made in the COLLECTION_ACTIONNAME.xml DVM before you use the process integration.

10.2 Setting Up Siebel CRM

For some Siebel CRM interfaces, in Siebel, you must set the process property UTCCanonical to Y.

For more information about which Siebel CRM interfaces require you to enable the UTCCanonical process property, see instructions for ACR 474 and ACR 508 in the Siebel Maintenance Release Guide.

The credit alert appears in the customer service supervisor's queue by default, and the supervisor assigns the credit alert to a customer service representative (CSR). Siebel CRM can also be customized to automatically assign these credit alerts to a CSR based on a set of criteria as defined by the service provider.

To set up Siebel CRM:

1. Extract and copy the .ifb files from the ACR 463/EIM folder.

2. Place the ProcessAlertsAndBillingProf.ifb file on the server path: Siebsrvr/Admin

To configure Siebel CRM:

1. Make sure that the Siebel server is running.

2. Make sure that the Siebel Enterprise Integration Manager (EIM) component is online.

3. For creation of the EIM job:

1. Go to SiteMap, Administration - Server Management, Jobs

2. Click the New button and select Enterprise Integration Manager in the Component/Job tab.

3. Complete the following parameters on the Job Parameters applet: Configuration file = ProcessAlertsAndBillingProf.ifb. Enter appropriate settings for Error Flag, Trace Flag, and SQL Trace Flag

4. Click the Submit Job button.

5. Make sure that the status changes to Success for the job that you have run.

6. After the EIM job is done, query the IF_ROW_STAT column of EIM_ALERT_CUT table to ensure that all the records have been loaded in the Siebel base tables correctly.

7. Check the Siebel CRM user interface (UI) to ensure that the data appears in corresponding views of the Credit Management screen.
For more information, see Configuring Siebel Business Applications, Configuring EIM Interfaces.

For Oracle Data Integrator (ODI)-based collection flows, during the transfer of data from Oracle BRM to Siebel CRM, ODI creates some temporary tables in the Siebel database. Once the data is successfully written to the Siebel EIM table, these temporary tables are dropped. Therefore, the Siebel database administer must grant create table privilege so that ODI can create the temporary tables.

For more information about using ODI, see Oracle Fusion Middleware Developer's Guide for Oracle Data Integrator

10.3 Working with DVMs

Domain value maps (DVMs) are a standard feature of the Oracle service-oriented architecture (SOA) Suite that enables you to equate lookup codes and other static values across applications, for example, FOOT and FT or US and USA.

DVMs are static in nature, though administrators can add maps as required. Transactional business processes never update DVMs-they only read from them. They are stored in XML files and cached in memory at run time.

DVM types are seeded for the Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care flows. Administrators can extend the list of mapped values by adding more maps.

Table 10-1 lists the DVMs for the process integration for collections management:

Table 10-1 Collections Management - DVMs

DVM

Description

COLLECTION_ACTIONNAME.xml

DVM mapping for action name

COLLECTION_PRIORITY.xml

DVM mapping for priority

COLLECTION_STATUS.xml

DVM mapping for status

COLLECTION_SUBSTATUS.xml

DVM mapping for sub-status

CURRENCY_CODE.xml

DVM mapping for currency code

Caution:

DVMs are stored in the Metadata Services (MDS) repository, which uses the database persistence, and are managed using tools provided by JDeveloper or Foundation Pack.

For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with Message Transformations," Working with DVMs and Cross-References.

10.4 Working with Cross-References

Cross-references map and connect the records within the application network, and they enable these applications to communicate in the same language. The integration server stores the relationship in a persistent way so that others can refer to it.

Table 10-2 lists the collections management cross-references:

Table 10-2 Collections Management - Cross-References

Cross-reference Table Name

Column

Description

CUSTOMERPARTY_ACCOUNTID

BRM/ SIEBEL

Used for cross-reference lookup for account ID.

CUSTOMERPARTY_BILLPROFILEID

BRM/ SIEBEL

Used for cross-reference lookup for billing profile ID.

10.5 Handling Errors

Handling Oracle BRM errors:

In case of any error, error details are logged to a file called CollectionsErrorLog.txt. This log file is available at <User_Home>/DISHome/CollectionsHome

Here <User_Home> is the UNIX user home path. For example, /slot/ems2880/oracle/DISHome/CollectionsHome

Handling Siebel CRM errors:

After every EIM load, check the value of the IF_ROW_STAT column in the EIM_ALERT_CUT table. The status is imported for successful loading. If the status is not imported, errors occurred during data load from the Siebel EIM tables to the Siebel base tables. Perform the following actions for this type of error:

1. From the Jobs view in the Administration - Server Management screen, navigate to the Tasks View in the same screen.

2. Get the task number from the Task field.

3. Navigate to the Siebsrvr\Log directory in the server and locate the log file by querying with the same task number.

4. The log file contains details of every level of EIM processing and errors if any.

5. Run the EIM job with appropriate .ifb property values after modifying the values for failed records.

For more information about EIM Error handling, see EIM Administration Guide, "Resolving Import Processing Problems."

For more information about the errors generated by Oracle BRM and Siebel CRM applications, see the documentation for that product.

For more information about setting up error notifications using these values, see Oracle Fusion Middleware Infrastructure Components and Utilities User's Guide for Oracle Application Integration Architecture Foundation Pack, "Using Error Notifications" and "Using Trace and Error Logs."

10.6 Configuring the Process Integration for Collections Management

Configure these properties in the AIAConfigurationProperties.xml file. The file is located in <AIA_INSTANCES>/config/. Entries in the AIAConfigurationProperties.xml file are case-sensitive. See Table 10-3.

For more information about reloading updates to AIAConfigurationProperties.xml, see the Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Building AIA Integration Flows."

Table 10-3 AIAConfigurationProperties.xml - Property Values

Property Name

Value/Default Values

Description

AIAHome

No default value.

A value is entered during installation.

This property contains the absolute path to AIA Home.

BatchSize

Default value = 5000

After installation, administrators or users can change this value.

This property specifies the number of messages to dequeue in one batch.

For information about changing batch size default value, see Section 10.6.1, "Changing the BatchSize Default Value."

Default.SystemID

SEBL_01

This property gives the system ID of Siebel CRM.

IF_ROW_BATCH_NUM_CreatedStart

Default value = 100.

After installation, administrators or users can change this value.

This property indicates the starting value of the batch number (IF_ROW_BATCH_NUM) for the rows for new collection actions created in the Siebel EIM table.

IF_ROW_BATCH_NUM_CreatedEnd

Default value = 199

After installation, administrators or users can change this value.

This property indicates the end value of the batch number (IF_ROW_BATCH_NUM) for the rows for new collection actions created in the Siebel EIM table.

IF_ROW_BATCH_NUM_UpdateStart

Default value = 200

After installation, administrators or users can change this value.

This property indicates the starting value of the batch number (IF_ROW_BATCH_NUM) for the updated collection actions in the Siebel EIM table.

IF_ROW_BATCH_NUM_UpdateEnd

Default value = 299

After installation, administrators or users can change this value

This property indicates the ending value of the batch number (IF_ROW_BATCH_NUM) for the updated collection actions in the Siebel EIM table.

IF_ROW_BATCH_NUM_Error

Default value = 50

After installation, administrators or users can change this value.

This property defines the value for the IF_ROW_BATCH_NUM for the unsuccessful collections actions during importing from the Siebel EIM table.

AL_SOURCE_CD

Customer

This property is used to update the AL_SOURCE_CD value in the Siebel EIM table.

AL_TYPE_CD

Credit

This property is used to update the AL_TYPE_CD value in the Siebel EIM table.

10.6.1 Changing the BatchSize Default Value

Changing the BatchSize default value has dependencies on the batch size that is defined in Siebel. Before you make any changes to this property, check Siebel documentation to find out the optimal batch size and accordingly make changes to this property.

For example, if the BatchSize property is changed to 5000 and the IF_ROW_BATCH_NUM_CreatedStart = 100 and IF_ROW_BATCH_NUM_CreatedEnd = 199, then ODI can simultaneously dequeue 5000*100 = 500000 records into Siebel EIM table. Siebel batch size for the EIM table load must match so that it can manage this data upload from ODI.

A Mapping Siebel Billing Management UI Elements to Oracle BRM Customer Center

This appendix provides a mapping of fields on the Siebel Billing Management UI to fields in Oracle BRM Customer Center. This appendix can be used as a reference to explain the Agent Assisted Billing Care integration.

This appendix includes the following sections:

- Section A.1, "Billing Profile and Account Balance"

- Section A.2, "Bills"

- Section A.3, "Balance Group"

- Section A.4, "Unbilled Usage"

- Section A.5, "Payments"

Note:

Siebel UI screenshots are for reference only and may differ from actual screens.

A.1 Billing Profile and Account Balance

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link

Siebel Screen: Billing Profile Portal screen

Siebel View: Billing Invoice

UI Component: Billing Profile as shown in Figure A-1.

Figure A-1 Billing Profile

Table A-1 Billing Profile Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Billing Profile Form

Account

Summary

Contact Information

Company or First & Last Name

Account/Customer name

--

Primary

NA

NA

NA

--

--

Profile Name

Payments

Billing Payment Method

Bill Unit

Account/Customer Billing Profile name

--

Bill Type

NA

NA

NA

Bill/Invoice type requested by customer (summary or detail)

--

Service Account

Summary

Contact Information

Company or First & Last Name

In cases where the billing account and service account are different. In such scenarios it results in a parent-child hierarchy in Oracle BRM. The service account is the nonpaying child account.

--

Bill Media

Payments

Billing Payment Method - Payment Options

Delivery Method

Delivery method for invoice. For example, delivery of invoices by email, paper, and so on.

--

Payment Method

Payments

Billing Payment Method

Payment Method

How customers pay their bills. Payment methods include credit card, invoice, debit card, and so on.

--

Billing Profile Status

NA

NA

NA

Current status of the customer's billing profile (active or inactive).

UI Component: Balance Summary as shown in Figure A-2.

Figure A-2 Balance Summary

Table A-2 Balance Summary Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Balance Summary Form

Balance

Balance

Balance Summary

Amount due for all bills

Total billed amount that has not been paid. This includes the balance impact of any unresolved dispute.

--

Due Now

Balance

Balance Summary

Due Now

Billed amount the customer currently owes. This is calculated as Amount due for all bills minus Adjustments/Payments that are not yet applied.

--

Pending Payments/Adjustments

Balance

Balance Summary

Adjustments/Payments not applied

Total of unallocated payments and unallocated account adjustments.

--

Currency

NA

NA

NA

--

--

Unresolved Disputes

Balance

Balance Summary

Unresolved Disputes

Total of disputed amounts that have been removed from the Due Now amount before the settlement of the dispute.

--

Total

Balance

Balance Summary

Total

Sum of the Due Now amount and the Bill in Progress (estimate) amount.

--

Unbilled Usage

Balance

Balance Summary

Bills in Progress

The Bill in Progress shows the current balance of the upcoming bill, including unbilled item charges, cycle forward arrears fees, and A/R actions on those charges and fees.

A.2 Bills

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Bills tab

Siebel View: Billing Invoice

UI Component: Bills as shown in Figure A-3.

Figure A-3 Bills

Table A-3 Bills Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Invoice List Applet

Bill Number

Balance

Bills

Number

A unique number that identifies a specific bill. Each invoice contains a bill number. A bill is an object in the Oracle Communications BRM database that stores the balance impacts in the bill items of a customer's account during one billing cycle. Bills contain information about the customer's account, the account's billing cycle, and the amount billed.

--

Bill Period

Balance

Bills

Billing Cycle

The time period during which charges accumulate in an account before a bill is finalized. One billing cycle can contain one or more accounting cycles.

--

Amount Due

Balance

Bills

Balance

The original bill amount minus Payments and A/R Actions.

--

Due Date

Balance

Bills

Due Date

The date on which the bills payment is due.

--

Previous Balance

NA

NA

NA

--

--

Payments and A/R Actions

Balance

Bills

Payments and A/R Actions

The total sum of all payments made for a bill plus the A/R actions such as adjustments or refunds.

--

Bill Payment

Payments

Payments Received

Paid

The total payment made against a bill.

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Bills tab, Bill Number link

Siebel View: Billed Usage Detail

UI Component: Bill Details, Service Charges, Item Charges as shown in Figure A-4.

Figure A-4 Bill Details, Service Charges, item Charges

Table A-4 shows the mappings for Bill Details.

Table A-4 Bill Details Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Invoice Form Applet

Account

Summary

Contact Information

Company or First & Last Name

Account/Customer name

--

Profile Name

Payments

Billing Payment Method

Bill Unit

Account/Customer Billing profile name

--

Bill Number

Balance

Bill Details

Number

A unique number that identifies a specific bill. Each invoice contains a bill number. A bill is an object in the Oracle Communications BRM database that stores the balance impacts in the bill items of a customer's account during one billing cycle. Bills contain information about the customer's account, the account's billing cycle, and the amount billed.

--

Bill Period

Balance

Bill Details

Billing Cycle

The time period during which charges accumulate in an account before a bill is finalized. One billing cycle can contain one or more accounting cycles.

--

Amount Due

Balance

Bill Details

Balance

The original bill amount minus the Payments and A/R Actions.

--

Due Date

Balance

Bill Details

Due Date

The date on which the bills payment is due.

--

Previous Balance

NA

NA

NA

--

--

Payments and A/R Actions

Balance

Bill Details

Payments and A/R Actions

The total sum of all payments made for the bill plus the A/R actions such as adjustments or refunds.

--

Bill Payment

Balance

Bill Details

Total Payments

The total payment made against a bill.

Table A-5 shows the mappings for Service Charges.

Table A-5 Service Charges Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Invoice Service Charge List

Description

Balance

Bill Details, Item Charges

Description

Name of the service

--

Charge

Balance

Bill Details, Item Charges

Charge

Holds charges of all items under the service.

--

Discount

Balance

Bill Details, Item Charges

Discount

Holds the total of all discounts given under the service or item.

--

Net Amount

Balance

Bill Details, Item Charges

Net

The Net Amount is the amount after discounts, payments, and A/R actions have been applied to the service.

Table A-6 shows the mappings for Item Charges.

Table A-6 Item Charges Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Invoice Item Charge List

Description

Balance

Bill Details, Item Charges

Description

Item is an entity that represents a group of charges. For example, a Cycle Forward charge for the service VoIP instance.

--

Charge

Balance

Bill Details, Item Charges

Charge

Charge indicates the total amount for the item.

--

Discount

Balance

Bill Details, Item Charges

Discount

The Discount column shows any discount that is applicable to the item.

--

Net Amount

Balance

Bill Details, Item Charges

Net Amount

The Net Amount is the amount after discounts, payments, and A/R actions have been applied to the item.

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Bills tab, Bill, Item Charges, Net Amount link

Siebel View: CDR Details

UI Component: Event Details as shown in Figure A-5.

Figure A-5 Event Details

Table A-7 Event Details Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

CDR Details List

Date

Balance

Bill Details, Item Charges, Description

Date & Time

Date and time when the call was made. The time zone of the call is in the time zone in which the call was originally made.

--

Charge

Balance

Bill Details, Item Charges, Description

Charge

Charge indicates the total amount for the call (CDR).

--

Discount

Balance

Bill Details, Item Charges, Description

Discount

The Discount column shows any discount that is applicable.

--

Net Amount

Balance

Bill Details, Item Charges, Description

Net

Actual amount due after any discounts are applied to the charge.

--

Duration

Balance

Bill Details, Item Charges, Description

Quantity

Total time of the call.

--

Number Called

Balance

Bill Details, Item Charges, Description

Called No

Telephone number to which the call was made.

--

Non-Currency

Balance

Bill Details, Item Charges, Description

Non-Currency

If the event is of type nonmonetary, the column is checked.

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Bills tab, Bill Number link, Payments tab

Siebel View: Billed Usage Payments

UI Component: Bill Payments as shown in Figure A-6.

Figure A-6 Bill Payments

Table A-8 Bill Payments Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Billed Usage Payments List

Payment Number

Balance

Bill Details, Payment Details

Payment Number

The payment item number to identify a payment.

--

Payment Date

Balance

Bill Details, Payment Details

Posted

The date on which the payment was posted.

--

Payment Method

Balance

Bill Details, Payment Details

Payment Type

The Payment Method identifies how customers paid their bill; for example, by credit card or direct deposit.

--

Payment Amount

Balance

Bill Details, Payment Details

Amount

The total amount that was paid by the subscriber as part of the payment.

--

Confirmation Number

Balance

Bill Details, Payment Details

Payment Number

The payment item number to identify a payment.

--

Allocated

Balance

Bill Details, Payment Details

Allocated

The payment amount that has been allocated to the bill.

--

Unallocated

Balance

Bill Details, Payment Details

Unallocated

The total amount from the payment made that is not yet applied.

--

Reversed

Balance

Bill Details, Payment Details

Reversed

If a particular payment has been reversed, then this column displays the value Y.

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Bills tab, Bill Number link, A/R Items tab

Siebel View: A/R items Details

UI Component: Bills A/R items as shown in Figure A-7.

Figure A-7 Bills A/R Items

Table A-9 Bills A/R Items Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

A/R Items List

Type

Balance

Bill Details, A/R Items

Type

The type of A/R actions, such as Adjustment, Dispute, Refund, Write-off, and so on.

--

Date

Balance

Bill Details, A/R Items

Date

The date on which the adjustment was made.

--

Resource Name

Balance

Bill Details, A/R Items

Resource

This column indicates to which resource the adjustment was made. For example, currency resource or noncurrency resource such as free seconds.

--

Amount

Balance

Bill Details, A/R Items

Amount

The adjustment amount that was made against a resource.

A.3 Balance Group

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Balance Group tab

Siebel View: Balance Group

UI Component: Balance Group Details (Balance Group, Balance, Balance Details and Services) as shown in Figure A-8.

Figure A-8 Balance Group Details

Table A-10 Balance Group Details Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Balance Group

Name

Balance

All Credit Limit, Currency Credit Limit

Balance Group

The name of the balance group. For example, Account Level Balance Group.

Balance

Balance

--

All Credit Limit, Currency Credit Limit

Outstanding

Total balance under the balance group.

--

Unit of Measure

NA

NA

NA

In case of monetary resource, this column in Siebel CRM displays Currency and for nonmonetary resource this column is blank.

--

Ceiling Credit Limit

--

All Credit Limit, Currency Credit Limit

Amount or Unlimited

1. If there is a value under the Account in Oracle BRM, this indicates the credit limit of the balance group.

2. If the Unlimited column is selected, this indicates there is no credit limit for the balance group.

--

Floor Credit Limit

NA

NA

NA

--

--

Threshold Credit Limit

NA

NA

NA

--

Balance Details (for monetary resource)

Available

Plan

Product Detail

Outstanding

Total balance under the balance group.

--

Valid From

Plan

Product Detail

Purchase Start Date

Purchase start or valid from date.

--

Valid To

Plan

Product Detail

Purchase End Date

Purchase end or valid to date.

--

No End

Plan

Product Detail

Check box

This is used when the product has unlimited validity.

Balance Details for non-monetary resource)

Available

Non-Currency

Non-Currency Details

Available

Total balance under the balance group.

--

Valid From

Non-Currency

Non-Currency Details

Valid From

Resource start or valid from date

--

Valid To

Non-Currency

Non-Currency Details

Valid To

Resource end or valid to date.

--

No End

Non-Currency

Non-Currency Details

Check box

This is used when the resource has unlimited validity.

Balance Group Services

BRM Service ID

Balance

All Credit Limit, Currency Credit Limit

Balance Group

If the product is part of a service bundle, then this column displays the BRM Service ID of the product under the balance group.

--

Service Type

Plans

Plans

Service

Billing service type of the product.

--

Product Name

Plans

Plans

Product/Discount

Product name.

--

Effective Date

Plans

Plans

Purchased

Product purchased date.

--

Status

Plans

Plans

Status

Current status of the product (active or canceled).

A.4 Unbilled Usage

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Unbilled tab

Siebel View: Unbilled Usage

UI Component: Bill Details, Service Charges, Item Charges as shown in Figure A-9.

Figure A-9 Bill Details, Service Charges, Item Charges

Table A-11 Bill Details, Service Charges, and Item Charges Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Unbilled Usage

Description

Balance

Bills in Progress, Item Charges

Description

Name of the service.

Charge

Balance

Bills in Progress, Item Charges

Charge

Holds unbilled charges of all items under the service.

--

Discount

Balance

Bills in Progress, Item Charges

Discount

Holds the total of all discounts given under the service or item.

--

Net Amount

Balance

Bills in Progress, Item Charges

Net

The Net Amount is the amount after discounts, payments, and A/R actions have been applied to the service.

Unbilled Item Charges

Description

Balance

Bills in Progress, Item Charges

Description

Item is an entity that represents a group of charges. For example, a Cycle Forward charge for the service VoIP instance.

--

Charge

Balance

Bills in Progress, Item Charges

Charge

Charge indicates the total amount for the item.

--

Discount

Balance

Bills in Progress, Item Charges

Discount

The Discount column shows any discount that is applicable.

--

Net Amount

Balance

Bills in Progress, Item Charges

Net Amount

The Net Amount is the amount after discounts, payments, and A/R actions have been applied to the item.

A.5 Payments

Navigate to the Account Summary, Billing Profile applet, Billing Profile Name link, Payments tab

Siebel View: Billing Profile Payment

UI Component: Payments as shown in Figure A-10.

Figure A-10 Payments

Table A-12 Payments Mapping

Siebel Applet

Siebel Field

BRM Tab

BRM Form

BRM Field

Comments

Billing Profile Payments List

Payment Number

Payments

Payments Received

Number

The payment item number to identify a payment.

--

Payment Date

Payments

Payments Received

Date

The date on which the payment was posted.

--

Payment Method

Payments

Payments Received

Payment Method

The Payment Method identifies how customers paid their bill; for example, by credit card or direct deposit.

--

Payment Amount

Payments

Payments Received

Paid

The total amount that was paid by the subscriber as part of the payment.

--

Comments

Payments

Payments Received

NA

--

--

Confirmation Number

Payments

Payments Received

Number

The payment item number to identify a payment.

--

Allocated

Payments

Payments Received

Allocated

The payment amount that has been allocated to the bill.

--

Unallocated

Payments

Payments Received

Unallocated

The total amount from the payment made that is not yet applied.

--

Reversed

Payments

Payments Received

Reversed

Any payments that were reversed.

B Composite Application Validation System Changes

This appendix discusses how the Composite Application Validation System (CAVS) has changed from the Oracle Application Integration Architecture (Oracle AIA) Communications 11.1 release to the Oracle AIA Communications 11.2 release and provides details on Requestor application business connector services (ABCSs) and Provider ABCSs.

This appendix includes the following sections:

- Section B.1, "Configuration Properties for CAVS Enablement in 11.1"

- Section B.2, "Configuration Properties for CAVS Enablement in 11.2"

B.1 Configuration Properties for CAVS Enablement in 11.1

In the 11.1 Oracle AIA CAVS implementation, every service has a number of configuration properties.

For more information about these configuration properties, see the Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack.

For the RouteToCAVS property, the out-of-the-box value is False. Oracle AIA provides a user interface (UI), which allows the user to toggle this property value between True and False for each service listed.

Figure B-1 is an example of the AIA Configuration UI. To navigate to this UI: log in to the AIA Console (http://<host>:<port>/AIA), go to Setup and then select the AIA Configuration tab.

Figure B-1 AIA Configuration Screen

B.2 Configuration Properties for CAVS Enablement in 11.2

CAVS enablement has been reorganized. As a result, the UI can no longer be used to toggle the value of the RouteToCAVS property for the Communications Order to Cash services, which are part of the 11.2 release.

The following instructions describe how to modify the configuration properties for Requestor ABCS and Provider ABCS to enable CAVS.

Note:

Any change in the System Configuration screen does not enable CAVS for a service. You must make changes manually in the Oracle AIA configuration file to make the service CAVS enabled.

B.2.1 Requestor ABCS

For CAVS enablement of Requestor ABCS, a single configuration property is maintained.

For example, EBSOverride.CommunicationsSalesOrderEBSV2.ProcessSalesOrderFulfillment.Address

In order to enable CAVS, you must manually edit the AIAConfigurationProperties.xml file, which is located here: $AIA_HOME/aia_instances/$INSTANCE_NAME/AIAMetaData/config. Entries in the AIAConfigurationProperties.xml file are case sensitive.

To enable CAVS for Requestor ABCS:

1. Open the AIA configuration properties file.

2. Set the Address property to the CAVS URI for each service that you want to be CAVS enabled.
For example, http://<soa_server>:<soa_port>/AIAValidationSystemServlet/asyncrequestrecipient

3. Save and close the file after you have set this property for all desired Requestor ABCSs.

4. Login to the AIA Console (http://<host>:<port>/AIA). Go to Setup, and then select the AIA Configuration tab. Click Reload to relaod the configuration file and make your changes effective.

B.2.2 Provider ABCS

For CAVS enablement of a Provider ABCS, two configuration properties are maintained. For example:

- ""Routing.SWI_spcOrder_spcUpsert.RouteToCAVS"

- ""Routing.SWI_spcOrder_spcUpsert.SEBL_01.EndpointURI"

In order to enable CAVS, you must manually edit the AIAConfigurationProperties.xml file, which is located here: $AIA_HOME/aia_instances/$INSTANCE_NAME/AIAMetaData/config. Entries in the AIAConfigurationProperties.xml file are case sensitive.

To enable CAVS for Provider ABCS:

1. Open the AIA configuration properties file.

2. Set the RouteToCAVS property value to True and set the EndpointURI property value to the actual CAVS URL for each service that you want to be CAVS enabled.

3. Save and close the file after you have set this property for all desired Provider ABCSs.

4. Login to the AIA Console (http://<host>:<port>/AIA). Go to Setup, and then select the AIA Configuration tab. Click Reload to relaod the configuration file and make your changes effective.

C Reintroducing Enterprise Business Services

Enterprise business services (EBSs) are used to help route to multiple Providers. If you are using one source and one target system for your integration flows then EBSs are unnecessary. However, if you must dynamically identify a Provider system during runtime (content-based routing) then you should reintroduce EBSs.

Note:

With the deployment of the Fusion Middleware Foundation Pack, web service definition language (WSDL) files are provided for all EBSs.

To reintroduce EBSs:

1. Go to JDevloper and create a new composite for the EBS with an Oracle Mediator service. Use the EBS WSDL provided by Fusion Middleware Foundation Pack.

2. Create routing rules in Oracle Mediator to route to appropriate Provider connectors.

3. Save your changes.

4. Open the AIAConfigurationProperties.xml file, which is located here: $AIA_HOME/aia_instances/$INSTANCE_NAME/AIAMetaData/config.
Entries in the AIAConfigurationProperties.xml file are case sensitive.

5. For connectors that are to invoke the new EBS instead of directly invoking the Provider, replace the Provider connector's name and address with the name and address of the newly created EBS.
This action tells the Requestor to invoke the EBS instead of directly invoking the Provider application business connector service (ABCS).

6. Save and close the file.

7. Login to the AIA Console (http://<host>:<port>/AIA). Go to Setup, and then select the AIA Configuration tab. Click Reload to relaod the configuration file and make your changes effective.

Copyright © 2001, 2012, Oracle and/or its affiliates. All rights reserved.