Open APIs

  • 1.  What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 13 days ago
    Hi,

    We are in out journey of adopting TMF OpenAPIs in a stand alone charging application.
    We wish to expose OpenAPI/s for provisioning Customer data, order information etc. towards the charging application.
    Currently there are 3 options we consider:
    1. Create a dedicated OpenAPI (Currently not defining by TMF) that will be exposed to external application (Customer mgmt., order mgmt. etc.) and will be used to provision all relevant information.
    2. Use TMF 641 - Service Ordering Management API hat will be exposed to external application (Customer mgmt., order mgmt. etc.) and will be used to provision all relevant information.
    3. Towards each external application expose aspecific OpenAPI:
    * TMF622 -Product Ordering API or TMF 641 - Service Ordering Management API - towards the order mgmt. application
    * TMF 629 - Customer Management API - towards the Customer mgmt. application
    * TMF 637 Product Inventory Management API for relevant inventory information
    ...

    What is the option that best fits TMF best practices


    ------------------------------
    Jacob Bensaid
    ------------------------------


  • 2.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 13 days ago
    Hi Jacob

    Interesting question. There was a thread some months back where @Vance Shipley and I discussed the various possibilities, unfortunately I was not able to find the thread.
    Almost by definition an online charging system will have a controlled replica of customer and product data, as you stated, for performance reasons. In the absence of a dedicated API in TMF-land (and I'm not sure if a dedicated API will be​ forthcoming), probably your 3rd suggestion is best. Anyway it makes sense to provision customer information and product information separately, since they do not have the same lifecycle (products come and go, while customer has more permanency).

    The tricky thing is that according to ODA, on the one hand OCS lives in Production layer, and "speaks" service/resource, while on the other we have things such as monetary buckets and balances, which are part of core commerce.

    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------



  • 3.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 13 days ago

    @Jonathan Goldberg thank you for your answer.

    Using the 3rd option has some risks in regards to synchronization/dependency/orchestration(API call order) - ​I'll explain with an example:
    When a new Customer is buying a product the calls towards the charging system should be synchronized as well as ordered: first a new customer details needs to be provisioned to the charging system  and only then the the product/services provisioning can be done to the charging system.

    If the TMF629 POST into charging would fail or be delayed due to some issue the TMF622 POST will fail validation as the customer will not be recognized by the charging system.

    option 1 & 2 can overcome this risk as they should enable a single call that will provision the entire customer & order data into the charging system in a single API call.

    This will also make sense in regards to the orchestration of the provisioning to several systems (Charging, billing ...) as it is easier to orchestrate 1 call per system rather than several.

    HAs anyone has actual experience with such charging OpenAPI integration?



    ------------------------------
    Jacob Bensaid
    ------------------------------



  • 4.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 13 days ago
    You might look at what we presented in the 5G Chargers Catalyst project, although that may become unavailable in a week or so. See this video for a description of the Catalog Driven Design we showcased. The tldr; of which is that an OCS/CCS "federates" with the Product Catalog, Product Inventory, etc. in order to allow the business policy and rules to be in the catalog while being used in real time rating and charging.

    ------------------------------
    Vance Shipley
    SigScale
    ------------------------------



  • 5.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 13 days ago
    Thanks @Vance Shipley for weighing in, I was sure I could rely on you. To be fair, not all commercial OCS are able to work against an external product inventory.

    Jacob, the orchestration issue that you raise is true for any situation where you need to involve multiple entities. It could be resolved by having a robust retry policy so that if the TMF622 call fails due to missing customer you could retry. Or you could ensure that your code invokes TMF622 only after a positive response is received from your TMF629 invocation.​

    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------



  • 6.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 12 days ago

    Thank you @Vance Shipley

    The source you shared present very interesting use cases.

    Yet my question still remains - how was the provisioning carried out? which API/APIs where used to convey customer/order information to the 5G chargers.​?



    ------------------------------
    Jacob Bensaid
    ------------------------------



  • 7.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 11 days ago
    The premise is federation of Catalogues and Inventories as described in IG1222 ODA Technical Architecture ODA Patterns: Part 4.  The just of which is that it uses mechanisms defined in Open APIs (i.e. TMF620, TMF637) for import/export and subscription/notification to synchronized your internal data with external sources.

    ------------------------------
    Vance Shipley
    SigScale
    ------------------------------



  • 8.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 11 days ago

    Thank you @Vance Shipley

    It seems that TMF637 ​is the API you used for provisioning of product instances - this is very interesting and useful



    ------------------------------
    Jacob Bensaid
    ------------------------------



  • 9.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 11 days ago
    I think that what Vance is saying is that as a result of TMF637 activity in the master product inventory, events are raised. Your charging application could listen to these events to update its internal representation of the product (and similarly for the customer).
    That's certainly a feasible approach, but you need to be aware of what can go wrong (e.g. events were not raised, or not consumed), and have a strategy for reconciliation.
    The advantage of an explicit update API for charging (or any other downstream system) is that you get positive confirmation of the data acceptance, rather than implicit choreography via the events.
    A lot to think about.

    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------



  • 10.  RE: What APIS a charging application needs to expose for provisioning from customer mgmt, order mgmt. etc.

    TM Forum Member
    Posted 11 days ago

    Thanks @Jonathan Goldberg ​​- indeed a lot to consider

    Subscribing to events will also delay the flow as the charging system will not be able to authorize services (e.g. data session) until the provisioning information is accepted and processed.

    In such cases using orchestrated APIs can be a better solution.



    ------------------------------
    Jacob Bensaid
    ------------------------------