SAP Subscription Billing can be used for transaction Service related products where there are no Physical Deliveries. It is like a contract of a service between Customer and business which is managed using SAP Subscription Billing.
Order Created in Commerce will be segregated among Physical and subscription order & sent to the respective backend, SAP Subscription Billing will orchestrate the order and generates the bill, and send it to S4HANA. S4HANA then will do a post-good fulfillment and generate the Invoice for it. This invoice/bill can be seen in my account section of the commerce portal. SAP Subscription Billing can also use SAP Entitlement Service for metering purposes and can generate bills based on it.
Integration of SAP Subscription billing with SAP Commerce include below major modules:
- Customer Replication
- Product Replication
- Order Creation and
- Subscription Management
- To create a Subscription for a customer from SAP Commerce to SAP Subscription billing, both system should be in Sync, which means User should exist in both system. SAP Subscription System has a Userid, which gets stored in SAP Commerce as a reference key that same user exists in Subscription systems as well.
- To achieve this replication, SAP Commerce provides us an extension “sapreveenuecloudcustomer”. This extension provides the business logic and required files for customer replication.
- Customer replication happens at the time of registration. When Customer Registers on a commerce portal, an Event gets called & the listener of this event starts a process whose actions call a service which first converts the Customer model to Integration Object as per the mapping defined in an impex. And then send this integration Object to SCPI using outbound service. SAP Commerce receives an ID for that customer from SAP Subscription billing as an acknowledgement that customer data is created successfully there as well.
- SAP Commerce has Interceptors which get called on updating the Customer data and Default Shipping Address.
- saprevenuecloudproduct is required for product replication. It contains different mapping impex, and java files required to accomplish the replication task.
- SAP Commerce provides a Cron job that replicates the Product related data to SAP Subscription Billing.
- There is a Value provider that provides a Flag to a product for its identification as a Subscription Product.
- SAP Commerce provides a saprevenuecloudorder for achieving this task.
- Once an order gets placed from the web portal, an order process will be called in the backend. Its Order Outbound Action uses an Allocation Service for splitting the order into Physical order and subscription order and thereafter sending them to their respective backend.
- An Outboundservice will be used to convert the order model to an integration object and send them to SAP Subscription Billing using SCPI.
- An EssentialData Impex is used for configuring Integration Object and outbound destination.
- CustomerId is checked before pushing the order to SAP Subscription; if it is not available then it will be updated in SAP Commerce Portal from SAP Subscription Billing.
- Subscription List and Detail
SAP Commerce provides a SubscriptionFacade for fetching subscription lists and their details using customer ID as Synchronous process.
It also provides a populator for Subscription, subscription Detail, and per unit charge populator.
- Extending/Cancelling Subscription
SubscriptionFacade has business logic for extending and canceling the subscription.
- Subscription Bills
There are Populators for displaying the Subscription Bill and Subscription Bill Detail.