Skip Headers
Oracle® Application Integration Architecture Siebel CRM Integration Pack for Oracle Communications Billing and Revenue Management: Agent Assisted Billing Care Implementation Guide
Release 11.3

Part Number E50336-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

6 Payment Integration Flow

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

Payment Integration Overview

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

  • CreateReceivedPayment lets you 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 BRM.

  • QueryReceivedPaymentList enables lets you view the history of payments in Siebel CRM at both the billing profile-level and invoice-level by retrieving payment records from BRM.

  • SearchPayment lets you search for payment records in BRM to display in Siebel CRM for an account at the billing profile-level or at the invoice-level.

Capturing Payments

Your customers can make payments in many ways: using a credit card or debit card over the phone, using a credit or debit card at a self-service location, using a check by mail, or using an electronic payment from a bank account.

The integration accepts payments from these channels in two ways:

  • From Siebel CRM: a customer service representative captures payment information in Siebel CRM

  • From the cross-channel system directly: payment information is captured the cross-channel system such as customer self-service, retail locations, web commerce, and partner systems

Capturing Payments in Siebel CRM

You capture one-time payments in Siebel CRM and send them to BRM for processing. BRM processes the payments and returns confirmation to Siebel CRM, which your customers can keep for their records.

You can accept one-time payments from self-paying accounts and non-paying subordinate accounts. All payments for the non-paying account are paid by a parent account. You capture one-time payments for non-paying accounts on the parent account's billing profile screen.

Figure 6-1 illustrates the flow for capturing payments in Siebel CRM.

Figure 6-1 Capturing Payments in Siebel CRM

Description of Figure 6-1 follows
Description of "Figure 6-1 Capturing Payments in Siebel CRM"

Figure 6-2 Capturing Payments in Siebel CRM Legend

This image shows the legend for the previous figure.

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.

  3. Click New to capture a new payment for this account.

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

See "Mapping Siebel Billing Management UI Elements to BRM Customer Center" for more information on mapping Siebel CRM elements to BRM elements.

Capturing Cross-Channel Payments

You must customize the integration to accept one-time payments from cross-channel systems other than Siebel CRM. See "Configuring Cross-Channel Payments" for more information.

When you have customized the integration, you can capture one-time payments directly in the cross-channel system, such as a retail point of sale or online self-service, and send the payments through the integration to BRM for processing. You have three options for authorizing payments:

  • BRM: BRM communicates with a third-party authorization system.

  • Third-party: the integration communicates with a third-party authorization system.

  • External: an external system, such as a retail point of sale system, authorizes payments and BRM records the payment immediately.

When payments are successfully authorized and recorded in BRM, the integration sends a confirmation message to the cross-channel system. When authorization or BRM processing fails, the integration sends an error message to the cross-channel system. You can customize the integration to send the confirmation or error message to Siebel CRM as well.

Figure 6-3 illustrates the flow for capturing payments from cross-channel systems.

Figure 6-3 Capturing Payments from Cross-Channel Systems

This image is described in the surrounding text.

Viewing Payment History

Regardless of how a payment is made, it must be displayed in the payment history retrieved from the billing system into Siebel CRM. BRM maintains payment information for a customer for a fixed period which varies by your legal requirements and business needs.

During a sales or service process, a customer may want to know his payment history. You 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. You 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.

Searching for Payments

The Search Payment functionality lets you search for specific payment records in 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. You search 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

Description of Figure 6-4 follows
Description of "Figure 6-4 View Payment History Flow"

Figure 6-5 View Payment History Flow Legend

This image shows the legend for the previous figure.

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-6 illustrates the CreateReceivedPayment integration flow.

Figure 6-6 CreateReceivedPayment Sequence Diagram

This image is described in the surrounding text.

The CreateReceivedPayment integration flow occurs as follows:

  1. You initiate the CreateReceivedPayment process by submitting a one-time payment for a billing profile from Siebel CRM or a payment channel. See the discussion of recording profile-level payments in Siebel Communications Guide for more information.

  2. Siebel CRM or the channel invokes the PaymentSiebelCommsReqABCS web service with the operation CreatePayment.

  3. The integration routes the CreatePaymentSiebelReqMsg message to the CreatePaymentSiebelCommsReqABCSImpl service.

  4. The CreatePaymentSiebelCommsReqABCSImpl service transforms the CreatePaymentReqMsg into the CreateReceivedPaymentListReqMsg enterprise business message (EBM) and routes it to the appropriate billing system.

    By default, the CreateReceivedPaymentListReqMsg EBM is sent to the CreateReceivedPaymentBRMCommsProvABCSImpl service to be routed to BRM.

  5. If the CreateReceivedPaymentListReqMsg EBM indicates that a third-party credit check is required (the OneTimePayment property is set to T), the CreateReceivedPaymentBRMCommsProvABCSImpl service initiates the third-party credit check and receives the authorization response.

  6. If the third-party credit check is successful or was not required, the CreateReceivedPaymentBRMCommsProvABCSImpl service transforms the CreateReceivedPaymentListReqMsg EBM into the input of PCM_OP_PYMT_COLLECT and calls the BRMPymtServices web service with the PCM_OP_PYMT_COLLECT opcode.

    When calling the PCM_OP_PYMT_COLLECT opcode, the CreateReceivedPaymentBRMCommsProvABCSImpl service sets the value of the PIN_FLD_COMMAND field as follows:

    • If the OneTimePayment property in the EBM is set to Y, the PIN_FLD_COMMAND field is set to 4.

    • If the OneTimePayment property in the EBM is set to O or T, the PIN_FLD_COMMAND field is set to 0.

      See "Configuring the Message from Cross-Channel Systems" for more information about the OneTimePayment property.

    If the third-party credit check is not successful, a BPEL exception is thrown and a failure response message is returned to Siebel CRM or the cross-channel system.

  7. If the PIN_FLD_COMMAND field is set to 4, the BRM initiates the payment authorization with a third-party system and receives the response.

  8. If the BRM authorization is successful or was not required, the BRMPymtServices web service calls the PCM_OP_PYMT_COLLECT opcode and returns the payment object output to the CreateReceivedPaymentBRMCommsProvABCSImpl service.

    If the BRM authorization is not successful, a BPEL exception is thrown and a failure response message is returned to Siebel CRM or the cross-channel system

  9. The CreateReceivedPaymentBRMCommsProvABCSImpl service transforms the BRM API output into a CreateReceivedPaymentListRespMsg EBM and returns it to the CreatePaymentSiebelCommsReqABCSImpl service.

  10. The CreatePaymentSiebelCommsReqABCSImpl service transforms the CreatePaymentListRespMsg EBM into a CreatePaymentSiebelRespMsg message, and returns it to the PaymentSiebelCommsReqABCS service.

  11. The PaymentSiebelCommsReqABCS service returns the CreatePaymentSiebelRespMsg message to the CMUCreatePayment service as a CMUCreatePaymentResponseMessage message.

  12. The system writes the CMUCreatePaymentResponseMessage to Siebel CRM or the payment channel and displays the payment confirmation number.

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-7 illustrates the QueryReceivedPaymentList integration scenario.

Figure 6-7 QueryReceivedPaymentList Sequence Diagram

This image is described in the surrounding text.

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 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.

SearchPayment Integration Flow

This integration flow uses the following interfaces:

  • ReceivedPaymentSiebelCommsReqABCSInterface with the following operations:

    • QueryPayment

    • SearchPayment

    • QueryInvoicePayment

  • SearchPaymentSiebelCommsReqABCSImpl

  • QueryReceivedPaymentListBRMCommsProvABCSImpl

Figure 6-8 illustrates the SearchPayment integration scenario.

Figure 6-8 SearchPayment Sequence Diagram

This image is described in the surrounding text.

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 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 BRM API PCM_OP_AR_GET_ACCT_ACTION_ITEMS and returns the payment object output to QueryReceivedPaymentListBRMCommsProvABCSImpl.

  7. The QueryReceivedPaymentListBRMCommsProvABCSImpl then transforms the 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.

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

See Oracle Communications Billing and Revenue Management Opcode Flist Reference for more information.

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

See "Web Services Reference" in Siebel Order Management Guide Addendum for Communications for more information.

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).

See "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository" in Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack for more information on how to use and configure OER to provide the AIA Reference Doc link.

EBOs can be extended such as adding new data elements. These extensions are protected and will remain intact even after a patch or an upgrade, so long as the extensibility guidelines are followed.

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

Integration Services

These services are delivered with the Payment integration flow:

  • PaymentSiebelCommsReqABCS

  • CreatePaymentSiebelCommsReqABCSImpl

  • CreateInvoicePaymentSiebelCommsReqABCSImpl

  • CreateReceivedPaymentBRMCommsProvABCSImpl

  • QueryPaymentSiebelCommsReqABCSImpl

  • QueryInvoicePaymentSiebelCommsReqABCSImpl

  • SearchPaymentSiebelCommsReqABCSImpl

  • QueryReceivedPaymentListBRMCommsProvABCSImpl

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

CreatePaymentSiebelCommsReqABCSImpl

The CreatePaymentSiebelCommsReqABCSImpl transforms the CreatePaymentReqMsg into a Payment EBM.

CreateInvoicePaymentSiebelCommsReqABCSImpl

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

CreateReceivedPaymentBRMCommsProvABCSImpl

CreateReceivedPaymentBRMCommsProvABCSImpl transforms the ReceivedPayment EBM into 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.

QueryPaymentSiebelCommsReqABCSImpl

The QueryPaymentSiebelCommsReqABCSImpl transforms the QueryPaymentReqMsg into QueryReceivedPaymentListEBM.

QueryInvoicePaymentSiebelCommsReqABCSImpl

The QueryInvoicePaymentSiebelCommsReqABCSImpl transforms the QueryInvoicePaymentReqMsg into ReceivedPaymentEBM.

SearchPaymentSiebelCommsReqABCSImpl

The SearchPaymentSiebelCommsReqABCSImpl transforms the SearchPaymentReqMsg into ReceivedPaymentEBM.

QueryReceivedPaymentListBRMCommsProvABCSImpl

QueryReceivedPaymentListBRMCommsProvABCSImpl transforms the BRM API output into QueryReceivedPaymentListResponseEBM.