Connected Services Framework 3.0
Connected Services Framework 3.0 - Billing Standard Business Event Send comments on this topic.
Configuring the Billing Standard Business Event
See Also

The Billing Standard Business Event (BillingSBE) is configured by setting parameters in several configuration files. By setting parameters in these files you can configure general operational characteristics of the BillingSBE. For example, you can configure the URIs of the Connected Services Framework (CSF) core endpoints and the connection string for the BillingSBE database, the WSE policies that the BillingSBE applies when it exchanges messages with other systems in your installation, and the way in which the the BillingSBE transforms and wraps Advice of Charge (AOC) messages. for more information, see The Billing Standard Business Event Deployment Guide.  

The BillingSBE Configuration Files

The following four configuration files are used to configure the BillingSBE components: 

  • web.config. Contains parameters that are used to configure the BillingSBE Web Service and is located in the virtual directory of the BillingSBE Web Service.
  • Microsoft.ConnectedServices.DeliveryService.exe.config. Contains parameters that are used to configure the Batched Delivery Service and is located in the same directory as the Batched Delivery Service executable.
  • BillingSbe.config. Contains parameters that are used to configure the operation of the BillingSBE Web Service.
  • BillingSBEPolicyCache.config. Contains the WSE policies that the BillingSBE uses to send messages to CSF components, target billing systems, and the BillingSBE MMC Snap-in. It also contains the policy used to receive messages by the BillingSBE.

You set parameters in web.config and BillingSbe.config to configure the BillingSBE Web Service. You specify the Web Services Enhancements (WSE) policies to be used by the BillingSBE by setting parameters in BillingSbe.config and BillingSBEPolicyCache.config. You set parameters in Microsoft.ConnectedServices.DeliveryService.exe.config to configure the Batched Delivery Service.  

WSE Policy configuration

The BillingSBE uses WSE policy to apply policy assertions to messages that it sends and receives. These assertions determine the type of protection applied to a message on the wire and the kind of credentials that are sent with the message. For more information, see Billing Standard Business Event Credential Checks and Message Encryption. All of the WSE policies that are used by the BillingSBE must be defined in the BillingSBE policy file. By default, the policy file is BillingSBEPolicyCache.config, but this is configurable. The policy file must contain the WSE policy that the BillingSBE uses to receive messages and one or more WSE policies that the BillingSBE uses to send messages; these include policies used to send messages to the Session component, the Identity Manager, and each of your billing systems. You set parameters in BillingSbe.config to map the policies in the BillingSBE policy file to the endpoints for which the BillingSBE should apply them.

Mapping WSE Policies

BillingSbe.config contains parameters that specify which policies in the BillingSBE policy file the BillingSBE should apply to receive messages, and to send messages to the Session component, the Identity Manager, and the general ledger billing system in your installation. You set the following parameters to control policy mapping for the BillingSBE:

  • <BillingSBEIncomingPolicy>. Specifies the policy that the BillingSBE applies to incoming messages. This parameter is mandatory.
  • <SessionIdForPolicyReference>. Specifies the policy that the BillingSBE administrative interface applies to messages that it sends to the Session component. This policy mapping only applies to messages that the BillingSBE sends to the Session component as a result of receiving certain administrative messages, such as the CreateSubscriptionRequest message. This parameter is mandatory.

Note. You must also create a policy map in the <Policy References> section for any Session Web service endpoints that the BillingSBE uses to receive raw billing events or that it uses to exchange AOC messages with a Value Added Service (VAS) system.

  • <IdentityManagerServiceId>. Specifies the policy that the BillingSBE applies to messages that it sends to the Identity Manager. If the BillingSBE applies a policy that uses a Username token to send messages to either the Session component or to any of your billing systems, you must set this parameter to specify the policy to be applied by the BillingSBE to query Identity Manager for secondary credentials. This parameter is in the <PolicyStore> section in both BillingSbe.config and Microsoft.ConnectedServices.DeliveryService.exe.config. 
  • <PolicyReferences>. A section that contains policy mappings for any Session Web Service endpoints that are used by the BillingSBE to receive raw billing events or to exchange AOC messages, as well as the policy mapping for the endpoint of the general ledger billing system. 

Note. You are not required to specify a policy mapping for billing mediation systems because the policy (and the system Id in Identity Manager) are specified in the ConfigureDeliverySettingsRequest message. 

To map a target endpoint to a policy, you add a <Policy> element for the endpoint to the section that is defined by the <PolicyReferences> element in BillingSbe.config. In this policy mapping you specify the URI of the target endpoint, the name of the policy in the BillingSBE policy file, and, if the policy contains uses a Username token, the Application Id with which the target is registered in Identity Manager. For more information, see Configuring WSE Policy for a Billing System. The following sample code shows a policy map for a service that uses a policy that requires a Username token.

<PolicyReferences>
    <Policy>
        <DestinationUri>soap.tcp://dx5150a036:9045/Client</DestinationUri>
        <PolicyName>GeneralLedgerBillingSystemPolicy</PolicyName>
        <IDMApplicationID>GLBillingSystem</IDMApplicationID>
    </Policy>
    …
   // Specify more policies here.
    …
</PolicyReferences>

You must also add a policy map to the <PolicyReferences> section for any custom Web services in your installation to which the BillingSBE sends messages asynchronously. For example, if you implement a custom administration tool that sends messages asynchronously to the BillingSBE, you must add a policy map for its endpoint so that the BillingSBE can return response messages to your tool.

Configuring Message Authorization

The BillingSBE Web Service checks the role of all incoming messages. It verifies that the credentials that are sent with the message are associated with an account that belongs to the appropriate Active Directory security group (sometimes called a role) for the kind of message that is sent. The BillingSBE uses three security groups to authorize accounts based on the whether the message is an administration message, a usage event propagation message, or an advice of charge message. You specify these security groups in the BillingSbe.config file by setting the following parameters:

  • BillingEventPropagationRole. Usage event propagation messages must be sent with credentials that belong to the security group specified by this parameter.  
  • BillingAdminRole. Admin messages must be sent with credentials that belong to the security group specified by this parameter. Administrators who use the BillingSBE MMC Snap-in must provide credentials that correspond to a user account that is a member of this group.
  • AocRole. AOC request messages and AOC response messages must have credentials that belong to the security group specified by this parameter. For example, the account used by the general ledger billing system must belong to the security group specified by this parameter.

You must ensure that the accounts used by BillingSBE administrators, the account used to run the general ledger billing system, and the accounts that send AOC messages and usage propagation events to the BillingSBE belong to the appropriate security groups. The credential attached to a message that is sent by a VAS participant through Session to the BillingSBE depends on several factors, such as, whether the session contains a persona participant, whether and how secondary credentials are specified for the BillingSBE in the session, and the WSE policy applied by the BillingSBE to receive messages. If the BillingSBE cannot authorize an account associated with a message, it drops the message and logs an error in the Event log. For more information, see Billing Standard Business Event Security.

Configuring Batched Reliable Delivery mode

The Batched Delivery Service uses the Reliable Delivery library to deliver batched transformed events to your billing systems. Microsoft.ConnectedServices.DeliveryService.exe.config contains parameters that are used to configure the Batched Delivery Service. Some of these parameters enable you to specify operational characteristics for Batched Reliable Delivery mode, such as, time-outs, the number of retry attempts, and whether data in the ReliableDelivery database table is encrypted. You may be able to improve the performance of your installation by adjusting these parameters for your installation. For more information, see The Microsoft.ConnectedServices.DeliveryService.exe.config File.

Configuring Advice of Charge Scenarios

AOC messages are handled by the BillingSBE Web Service. BillingSbe.config contains parameters that you set to specify the transformation and delivery characteristics of each request-response AOC message pair. The following XML shows these parameters for the AOC Authorize and AuthorizeResponse message pair. The same parameters exist for the Charge and the ReleaseAuthorization request-response message pairs.

<AuthorizeCharacteristics>
    <RequestTransformXSLT></MessageTransformXSLT>
    <RequestEnvelope></RequestEnvelope>
    <RequestAction>http://AocTarget/processAuthorize</RequestAction>
    <ResponseTransformXSLT></ResponseTransformXSLT>
    <ResponseEnvelope></ResponseEnvelope>
    <ResponseAction>http://AocTarget/processAuthorizeResponse</ResponseAction>
</AuthorizeCharacteristics>

The <RequestTransformXSLT>, <RequestEnvelope>, and <RequestAction> elements specify how to transform and wrap AOC request messages that are received from a VAS system before sending them to the general ledger billing system, and the <ResponseTransformXSLT>, <ResponseEnvelope>, and <ResponseAction> elements specify how to transform and wrap the corresponding AOC response messages that are received from the general ledger billing system before sending them to a VAS.

Note. The actions specified in the <RequestAction> and <ResponseAction> elements are the WS-Addressing actions that are used by the the general ledger billing system.

The parameters in BilllingSbe.config determine the format of the AOC messages that the BillingSBE exchanges with your general ledger billing system. AOC messages sent and received by VAS systems must conform to a schema that is contained in aoc.dll. There is only a single AOC message schema and it must be adhered to by every VAS system that exchanges AOC messages with the BillingSBE. The AOC message schema that is prov with the BillingSBE is flexible and should be able to handle most AOC scenarios; however, if necessary, you can change this schema to meet the requirements of your installation. For more information, see Modifying the Advice of Charge Message Schema.

See Also

Show: