Open APIs

 View Only
Expand all | Collapse all

Prepaid vs. Postpaid Product offerings in TMF Open API

  • 1.  Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Jan 15, 2024 16:38

    Hi all,

    Is there a way to distinguish between Prepaid vs. Postpaid product offerings in TMF APIs? If yes, how can this be achieved? Or does TMF provide distinction of Postpaid vs. Prepaid at a different resource than Product Offerings?



    ------------------------------
    Varun Pandhi
    Infosys
    ------------------------------


  • 2.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Jan 16, 2024 02:51

    Hi Varun,


    To my knowledge, there is no such specific way to say that a product offering is prepaid or postpaid, but you have several alternatives to model that. Right now, the following come to mind:

    • You may extend the Product Offering class with Prepaid and Postpaid Product Offering specific classes. Regarding the API, this will be reflected in the field @type of the Product Offering resource.
    • You may use a characteristic associated with the product offering. For example, one named 'contract_type' that could take the value 'prepaid' or 'postpaid'.
    • You may just classify prepaid and postpaid offerings into different categories.

    Hope it helps.

    Best regards,



    ------------------------------
    Abel Ruiz Huerta
    alvatross
    ------------------------------



  • 3.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Jan 16, 2024 11:54

    Hi Varun, Abel,

    A productOffering doesn't have to be specific for Prepaid or Postpaid. If needed to restrict the use of productOfferings this is usually done through MarketSegment by having separate Prepaid and Postpaid. A ProductOffering then targets a marketsegment.

    The SID model provides a converged billing model that allows a customer to be set up with CustomerBillingAccounts that have a creditlimit and a set of balances. 

    A customer with a credit limit of 0 can basically only consume services via its prepaid balances.

    In that sense prepaid or postpaid is a marketsegment and customers in that marketsegment get their CustomerBillingAccount set up in a particular way.

    Regards



    ------------------------------
    Koen Peeters
    OryxGateway FZ LLC
    ------------------------------



  • 4.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Jan 16, 2024 15:49

    An interesting discussion.

    In Amdocs best practice we distinguish directly between prepaid and postpaid offerings, by extending the vanilla TMF model. We then use this to qualify for specific customer types and other factors, for example to offer only prepaid offerings to customers with high credit risk.

    But there are many ways to skin a cat, as they say, and other suggestions made on this thread could be equally valid. I would not recommend, however, using characteristics for this purpose - for taking decisions in software it's more robust to have strongly-typed properties.



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



  • 5.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Jan 17, 2024 08:36

    Hello,

    It really depends what you need to achieve. some examples we implemented

    • organise the customer front-end so they see prepaid and postpaid offers are displayed differently (different web pages etc)
      • a good solution is to use Product Catalogue and Catalogue categories
    • Manage a product porftfolio or group product with common characteristics
      • a good solution is to use Product Line or Product Category (which can be nested, linked etc). see GB922 Product for details, It's not supported by the 620 API, though.
      • I would love TMF to introduce product line and category at product offering level, (not just prodspec) so marketeers have more flexibility to organise or tag product offers from a marketing and sales perspective. You can use a PIM (product information management) for that purpose or even a CMS.

    there could be more use cases, for billing, pricing, common qualification rules... with different solutions.

    On a old project, we had to use the Product offering related pricetype (recurring vs one-time) to distinguish prepaid from postpaid because this distinction was used to trigger a credit check (if the product has a recurring charge).


    PS: I would avoid Market Segment. It's not meant to group product offering. to group the target audience of a product offering. you use market Segment to group Parties (customers, GeographicAreas, SalesChannels). As the information model writes, "MarketSegments are the target of MarketingCampaigns, ProductOfferings, ProductPromotions...)


    PS: I also see that prepaid and postpaid no longer mean what they used to mean 10 years. My ISP use the term "prepaid" for my internet subscription because the invoice is sent and must be paid a  month before the service is delivered!



    ------------------------------
    Kind regards,

    Matthieu Hattab
    Lyse Platform
    ------------------------------



  • 6.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Jan 25, 2024 21:48

    Thanks everyone for the inputs.

    In our implementation, we mandatorily need to specify at the time of product offer creation how charging will be done (Full lump sum payment at the time of purchase, postpaid (at end of each billing period), Prepaid (At start of each billing period) or via some external engine).

    I believe since it needs to be specified upfront, we can't go via the Category because Category is optionally associated to Product Offering in TMF 620 Data Model. And, even if we do so, it would mean 4 different categories out of which one needs to be mandatorily included in POST request for Product Offering which might not fly per the cardinalities defined in TMF 620.

    Regarding the other option of extending TMF data model for the same, based on what I read through in TMF 630, there are few options -

    • Option 1: Create a class extended from TMF Base class for "ProductOffering" and including the new attribute in extended class
    • Option 2: Include the new attribute in extendedSchema for "ProductOffering" (Don't sub class)
    • Option 3: Use of characteristic pattern (Can be ignored as per previously highlighted responses)

    Is there a real distinction/recommendation on when we should use Option 1 or 2 (or 3 too?) ?

    Moreover, in this particular case, can we define a data type for new attribute for something equivalent to List of Values? I have seen String, Id, Integer only as possible data types of attributes in TMF Data model thus far. Is there a master list of available data types for use which can be referenced?



    ------------------------------
    Varun Pandhi
    Infosys
    ------------------------------



  • 7.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Jan 31, 2024 06:49

    another approach could be to use attribute "referredType". An example I used for prices was set up as follow: Say we have 2 ProductOfferingPrice: a charge and a discount. In the API @referredType would show either:

    • "@referredType": "ProductOfferingPriceCharge"
    • "@referredType": "ProductOfferingPriceAlteration"
      (a second attribute was also needed to indicate the type of alteration: "priceType": "discount")

    you should be able to adopt a similar approach with product offering. TMF630 has more details on this "polymorphism" pattern.



    ------------------------------
    Kind regards,

    Matthieu Hattab
    Lyse Platform
    ------------------------------



  • 8.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Feb 01, 2024 10:00

    Question, 

    If I had a Product OfferingPrice, and I need to inform this to my Billing System, with tech specs I need to map this POP to a RFSS (Because is a technical spec)?



    ------------------------------
    Claudia Ivette Falcon Mata
    Thinkskink
    ------------------------------



  • 9.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    Posted Feb 01, 2024 10:58
    I would use this:

    ProductOfffering -> 
    ProductOffferingPriceRefOrValue -> POPAlteration

    "POPAlteration = sub-resource Is an amount, usually of money, that modifies the price charged for an order item"


    Normally you do not send a price, because the product catalog will have the default price. It is only if you have to override it for a reason. Normally, a discount offering item should be loaded to alter a price.

    Thanks,

    A close up of a logo  Description automatically generated

     

    Theuns van Onselen

     

    Senior Solution Architect:

    EBS - Architecture

       0112893000

     

      

     

      Theuns.vanOnselen@multichoice.co.za



    This electronic communication and the attached file(s) are subject to a disclaimer which can be viewed at https://www.multichoice.co.za/wp-content/uploads/2017/08/MultiChoice-email-disclaimer.pdf. If you are unable to view the disclaimer, please email disclaimer@multichoice.co.za for a copy.







  • 10.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Feb 02, 2024 08:05

    Are we still discussing modelling pre-paid vs post paid?
    It doesn't seem so. price, "billing system" RFSS etc seem like a different conversation. It's best to create a separate thread else it's very difficult to follow the conversation



    ------------------------------
    Kind regards,

    Matthieu Hattab
    Lyse Platform
    ------------------------------



  • 11.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    Posted Feb 01, 2024 05:45

    There is an existing way to specify pre vs post paid products in the current structure since it is a payment method distinction.
    Using PriceType and RecurringChargePeriod highlighted below...

    You could also make use of Categories or Catalog if you want to group products that way and create a Prepaid and Postpaid specific view.



    ------------------------------
    Theuns van Onselen
    Multichoice Support Services (Pty) Ltd
    ------------------------------



  • 12.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Feb 02, 2024 08:39

    Hello, @Theuns van Onselen,

    There are some principles that we should adhere to when modeling data entities:

    Entity-Attribute-Value (EAV) Model: This model separates the entity (your product offering), the attribute (price type, for example), and the value (one-time or recurring). This separation allows for more flexibility and scalability, accommodating products with diverse pricing structures.

    Single Responsibility Principle: A class (or in this case, a data entity) should have only one reason to change. Applying this to data modeling suggests that the price entity should only be responsible for pricing information, not for determining the type of product offering.

    Data Integrity and Semantics: Using price type alone to infer the nature of the product offering can lead to semantic confusion and potential data integrity issues, especially when products have mixed pricing models. example:
    An post-paid offer can have 3 POPs: a recurring charge, a usage charge and a one-time charge (i.e. for activation fee etc).
    and if we consider bundle product offering, then things get even more complicated as the bundle can have bundledproductofferings with different price types (a handset paid one time + data paid every month)

    Regarding your suggestion about using "Payment method". I suspect you didn't mean to use "payment method" but "price type".
    "Payment method" does not belong to the Product domain but to the Party domain. you can find it in the SID dictionary:

    Party Payment ABE.Payment Method ABE
    The Payment Method ABE contains all the types of PaymentMethods. PaymentMethod is the way in which party provides payment, for example cash ,credit,transfer.


    My 2 cents



    ------------------------------
    Kind regards,

    Matthieu Hattab
    Lyse Platform
    ------------------------------



  • 13.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    Posted Feb 05, 2024 02:17
    Thanks for you 2 cent Matthieu but I was suggestion PriceType and RecurringChargePeriod and not payment method. 

    The concept of a prepaid versus postpaid products is actually not a product attribute at all but has been classified as such by business and consumers. The products are in essence the exact same product and only the "method of payment" or rather "charge period" is the differentiator, as well as price.

    Strictly speaking, I would see price type and recurring charge period as more accurate classification methods for a payment "method". While it is not actually a payment method as well, only when the price of the product should be charged. Charge period in turn is normally tightly coupled with payment method such as debit order for post paid and cash, eft  or recurring credit card payment for prepaid, although they are not mutually exclusive.

    For reporting purposes and ease of use, category and catalog would be easier, if a less accurate way of classifying prepaid versus post paid products. But it also means that the product catalog maintenance population and management process becomes very important to always remember to include those additional, non-mandatory classifications, while price type and charge period are always defined for a product.

    Thanks,

    A close up of a logo  Description automatically generated

     

    Theuns van Onselen

     

    Senior Solution Architect:

    EBS - Architecture

       0112893000

     

      

     

      Theuns.vanOnselen@multichoice.co.za




    This electronic communication and the attached file(s) are subject to a disclaimer which can be viewed at https://www.multichoice.co.za/wp-content/uploads/2017/08/MultiChoice-email-disclaimer.pdf. If you are unable to view the disclaimer, please email disclaimer@multichoice.co.za for a copy.







  • 14.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Feb 05, 2024 06:33

    Hello Theuns,
    Maybe I misunderstood you my comment is specifically related to this text:

    There is an existing way to specify pre vs post paid products in the current structure since it is a payment method distinction
    Using PriceType and RecurringChargePeriod highlighted below...

    • My opinion is that it is not a payment method distinction. (I use the TMF definition of payment method). Reason is that CSP can sell both pre and post paid subscriptions using the exact same payment method (for instance Paypal or direct debit, stripe, Klarna etc).
    • Using priceType and RecurringChargePeriod is not good enough. priceType "describes the price such as recurring, one time and usage."
      • While "recurring" clearly hints that the POP is for a "postpaid" subscription, which value are you going to use to define pre-paid?
      • using "one time" does not indicate that the she subscription is pre-paid. It could also be an activation charge (that exists for both for pre and post paid POs) or simply the price of a tangible good, which is not a subscription. 

    pre vs postpaid is simply a payment timing question, (SID has some mention of "payment timing" but it's not associated to the product domain.

    I also did some research on TMF confluence. I found 2 other suggestions:

    • the Analytics Big Data Repository (ABDR) data entity definitions suggests to add a new attribute in the SID called subscription type with values = (prepaid, postpaid, hybrid…). This would be the best solution and is what OP is actually asking. That way you have the information available at marketing level (the PO) and can be used to better target certain customer segment, market etc.
    • The SID actually suggests to use networkProdSpec, it has an attribute called isUsageMonitoring. when set to N, "corresponds to a blocked package (aka prepaid package)" (GB922 product). This approach is great because it allows a distinction the difference at functional level. ProdSpec. I think OP wants a distinction at marketing level (PO)
    • Product Category would be nice but they don't exist in the SID at product offering level. they only exist at productSpec level. 
    • product catalogue category is not ideal because catalogue category is a way to organise your offers that are sellable as standalone offers.
      But. CSPs have many product offerings that are not in the product catalogue because  isSellableStandAlone = N but as still sellable as part of a bundle.


    ------------------------------
    Kind regards,

    Matthieu Hattab
    Lyse Platform
    ------------------------------



  • 15.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    Posted Feb 06, 2024 01:53
    Ah, I see what you mean here. 

    Subscription type would be perfect, but in the absence, and depending on your organizational scenario, we tried coming up with alternatives.

    Depending on how mature your organization is, many may not use networkProductSpec as it's level of detail would be too to low.

    Some organizations only use SID in their TMF Open API Ecosystem implementation to standardize integration and does not cater for all SID classification scenarios, hence, some attributes are used for their specific use case by adapting it for other purposes.

    So in the absence of subscription type, what are our options? Perhaps Product > Characteristic?

    Thanks,

    A close up of a logo  Description automatically generated

     

    Theuns van Onselen

     

    Senior Solution Architect:

    EBS - Architecture

       0112893000

     

      

     

      Theuns.vanOnselen@multichoice.co.za



    This electronic communication and the attached file(s) are subject to a disclaimer which can be viewed at https://www.multichoice.co.za/wp-content/uploads/2017/08/MultiChoice-email-disclaimer.pdf. If you are unable to view the disclaimer, please email disclaimer@multichoice.co.za for a copy.







  • 16.  RE: Prepaid vs. Postpaid Product offerings in TMF Open API

    TM Forum Member
    Posted Feb 06, 2024 02:31

    As noted above, we in Amdocs have extended the ProductOffering model to add an explicit indication for prepaid or postpaid. Looking again at all the other suggestions in this thread leads me to conclude that this is probably the best option. Perhaps we should consider adding it to the core TM Forum Open API model (and by implication also to the SID).



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