Open APIs

 View Only
  • 1.  TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 03, 2023 07:34

    Hi,

    I have some problem with presenting price that represents package of free minutes or data usage.

    For example 500 min for national calls.

    In specificationon on ProductPrice schema I found field unitOfMeasure for which description sounds: "A string. Could be minutes, GB..." so i have field for unit but i can not find proper field for value.

    On Price schema there are fields:

    * dutyFreeAmount - A money (Money). All taxes excluded amount (expressed in the given currency).

    * taxIncludedAmount - A money (Money). All taxes included amount (expressed in the given currency).

    * percentage - A float. Percentage to apply for ProdOfferPriceAlteration.

    and none of these seems to match my needs. 

    So, should I create extension for ProductPrice to present price of such type? Or maybe I missed something?



    ------------------------------
    Bartłomiej Król
    Comarch S.A.
    ------------------------------


  • 2.  RE: TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 04, 2023 10:35

    What's wrong with one of the amounts? They represent the amount to be paid for the product offering, before tax and after tax.



    ------------------------------
    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: TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 04, 2023 12:52

    Its because I don't have value that is expressed as amount in given currency. As I mentioned above I don't know how to show price that represents allowance of 500 free minutes or in other example 5 GB of free internet.

    dutyFreeAmount and taxIncludedAmount are amounts expressed in currency.



    ------------------------------
    Bartłomiej Król
    Comarch S.A.
    ------------------------------



  • 4.  RE: TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 10, 2023 08:53

    Hello,

    Its because I don't have value that is expressed as amount in given currency

    TMF APIs typically represent "amounts" as sub-resource called "money" (see explanation on page 13, it's the same for all APIs):
    "Money" sub-resource is a base/value business entity used to represent money.

    So it's a perfect fit for your need.
    whether you need to store the amount with and without tax is your choice (also check the Conformance Profile PDF that will tell you which attribute is mandatory or optional)

    It's a pity this API doesn't provide an JSON example with prices so I suggest you find such example of Money sub-resource in another API guide, e.g. TMF620.
    it could look like:"validFor":{
        "startDateTime": "2020-09-22T00:00:00Z",
        "endDateTime": "" 
    },
    "priceType": "Usage"
    "unitOfMeasure": {
        "amount": 1,
        "units": "Month"
    },
    "dutyFreeAmount ": {
        "unit": "EUR",
        "value": 50
    etc

    GB922 -  Information framework - Product guide has examples on how to represent usage charges and it's quite close to the API  model.



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

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



  • 5.  RE: TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 11, 2023 09:26

    Hi,

    thanks Matthieu for your reply.

    When you say:

    TMF APIs typically represent "amounts" as sub-resource called "money" (see explanation on page 13, it's the same for all APIs):
    "Money" sub-resource is a base/value business entity used to represent money.

    So it's a perfect fit for your need.
    whether you need to store the amount with and without tax is your choice (also check the Conformance Profile PDF that will tell you which attribute is mandatory or optional)


    you mean that  I should return my value "500 min" as

    "dutyFreeAmount ": {
        "unit": "min",
        "value": 500
    }
    ?



    ------------------------------
    Bartłomiej Król
    Comarch S.A.
    ------------------------------



  • 6.  RE: TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 11, 2023 01:50

    Is this what you're looking for?

    {
      "@type": "ProductOffering",
      "description": "1GB/month",
      "productOfferingPrice": [
        {
          "name": "Subscription",
          "description": "Monthly subscription charge",
          "priceType": "recurring",
          "recurringChargePeriod": "monthly",
          "price": {
            "taxExcludedAmount": 20.00
          },
          "productOfferPriceAlteration": {
            "name": "Allowance",
            "description": "Usage included in monthly subscription.",
            "priceType": "recurring",
            "recurringChargePeriod": "monthly",
            "unitOfMeasure": {
              "amount": 1000000000,
              "units": "octets"
            },
            "price": {
              "taxExcludedAmount": "0"
            }
          }
        },
        ...
      ],
      ...
    }



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



  • 7.  RE: TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 11, 2023 09:31

    First of all thanks Vance for your reply.

    In TMF637 R19.0.1 specification the unitOfMeasure field is String typed not object as in your example. So i am not sure it answers my needs.



    ------------------------------
    Bartłomiej Król
    Comarch S.A.
    ------------------------------



  • 8.  RE: TMF 637 - How to present value of allowance price

    TM Forum Member
    Posted Apr 11, 2023 10:33

    hi,
    "Price" should only represent  "money" (a charge, a discount (percentage, value)) that you pay for a unit or measure (one-time charge of $100, $9.99 per month, $1 per GB...)

    it seems you only want to represent the 500 minutes. 

    Usage/allowance "information" It's stored in a dedicated entity: product (which is the equivalent of both the productSpecification and the productOffering in TMF 620)

    The product (productSpecification) describes what the product user can do, in this case, make up to 500 minutes of voice calls for an agreed price.

    Note: GB922 - Product has a section (2.2.12) that explain how to model usage (aka UsageVolumeProductSpec) in great details.

    I think you need:

    1. A product (representing the productSpecification) that would have 2 productCharacteristics and their respective value:

    •  volume = '500'
    • unitOfMeasure = 'minutes' (note: this UoM has nothing to do with the UoM you see in prices)

    (or just one characteristic: usage = '500 Minutes')
    2. a price, (representing the productOfferingPrice) that would have the price value (9.99), the currency ($), the unit  of measure (per month) etc.

    This will allow to contruct this expression:
    The product User gets productCharacteristic: '500 Minutes' for productPrice: $9.99 per month



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

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