The charging supplementary service is described in TS 22.086. These services are designed to supply to a mobile user sufficient information to allow a real time estimate to be made of the bill which will eventually be levied in the home PLMN on the Mobile Station (MS) subscriber.
In the case of certain MS uses, for example a mobile payphone, this estimate could be subject to further processing (e.g. to present the charges in currency, rather than units, this may include an additional mark up). This additional processing is not described in this document in order to avoid constraining the evolution of the MS product in this area.
This document gives an overall view of how this supplementary service shall operate both in the PLMN and within the MS. Text given in this document is required to define functionality and is not intended to constrain implementation.
The following documents contain provisions which, through reference in this text, constitute provisions of the present document.
References are either specific (identified by date of publication, edition number, version number, etc.) or non specific.
For a specific reference, subsequent revisions do not apply.
For a non-specific reference, the latest version applies. In the case of a reference to a 3GPP document (including a GSM document), a non-specific reference implicitly refers to the latest version of that document in the same Release as the present document.
In addition to the following, abbreviations used in the present document are listed in TS 21.905.
Mark up (MU):
An increase over the basic charge e.g. to provide extra revenue or to cover additional costs.
Service Provider (SP):
The organization through which the subscriber obtains PLMN services. This may be the network operator or possibly a separate body.
Home Units (HU):
The published basic telecommunication unit as published by the HPLMN. This has a published value expressed in the currency of the Home country.
Local PLMN (LPLMN):
The LPLMN is the HPLMN or VPLMN depending on the location of the MS at the time and is the PLMN with which the MS is interworking via the radio interface.
Local Units (LU):
The published basic telecommunication unit as published by the LPLMN. This has a published value expressed in the currency of the local country.
Price per Unit and Currency Table (PUCT):
The PUCT is the value of the Home unit in a currency chosen by the subscriber. The PUCT is stored in the SIM. The value of the PUCT can be set by the subscriber and may exceed the value published by the HPLMN. The PUCT value does not have any impact on the charges raised by the HPLMN.
Current Call Meter (CCM):
The accumulated charge as computed by the MS, expressed in terms of Home units.
Accumulated Call Meter (ACM):
The accumulated charge for both the current call and all preceding calls as computed by the MS, expressed in terms of Home units. The ACM is stored in the SIM/USIM.
ACM Maximum value (ACMmax):
The ACMmax sets the upper limit for the ACM. The ACMmax is stored in the SIM/USIM. The value of the ACMmax can be set by the subscriber.
Charging point (CHP):
The time at which charging commences i.e. at the point when the called party answers or the equivalent.
End of charge point (CEND):
The time at which the calling, or called, party stops charging by the termination of the call or by an equivalent procedure invoked by the network or by failure of the radio path.
Advice of Charge (AOC):
The charge as computed by the MS, expressed in terms of Home Units.
A charging element as defined by ITU-T, in octets (up to 64).
The principle of this service is that the MS shall be capable of indicating the cost of a call in home units as a basic service. This is the Advice of Charge (AOC).
The ability for the MS to perform further processing on AOC is not precluded. If the subscriber wishes, the MS shall indicate the value of CCM, ACM, ACMmax in the currency she has indicated using the PUCT.
At the charging point, the MS is informed of the charging rate.
The MS shall then use its independent internal clock to time the call from the charging point to the end of call i.e. the chargeable duration (CDUR) is measured by the MS. In the case of multiple calls this applies separately for each call (see subclause 4.3 l). The time taken attempting to perform call reestablishment is not included in CDUR (see subclause 4.3 m).
By using the calculations described in clause 4, the MS shall be able to derive the number of home units used.
Due to the independence of the calculated value, an exact one to one relation with the bill cannot be guaranteed. This discrepancy is due to the short delays in signalling between the MS and the network, e.g. transmission of charging point and end of call signals.
In deriving the present document the following principles are assumed:
For mobile originated calls, the mobile user pays for the connection to the dialled number, as per the published tariff of the Local PLMN, plus a mark up defined by the HPLMN to cover additional administration costs, when roaming.
It is assumed that the MS subscriber will not be charged for the forwarded leg if the dialled number has set call forwarding. If additional charging is required for this forwarded leg, then it is assumed that such charging will be applied only to the called party. This follows current telecommunications practice.
For mobile terminated calls, any charge set for incoming calls is that based on the tariff as published by the HPLMN.
The tariff as published for the roaming extension charges is assumed to be time and date invariant. For the avoidance of doubt, this assumption does not preclude routine tariff changes.
Charge rates for calls originating within a PLMN vary depending upon, for example, location, destination, service, time of day, type of day and any mark ups.
The units indicated in the advice of charge are always given in terms of Home units, the value of which is defined and published by the HPLMN, regardless of the PLMN in which they were incurred or the call direction or the type of call including supplementary service and data calls.
The MS is supplied with the necessary Charge Advice Information (CAI) at the charging point on a per call basis, in a signalling message over the radio interface.
The MS uses the CAI elements to compute the AOC value for the relevant call. Thus the signalling CAI not only provides charging information, but indicates the charging point and hence initiates the timing of the chargeable duration.
The information sent to the MS from the MSC consists of seven elements as follows:
u = units; t = time; i = interval; seg = segments; d = data interval.
The CAI Message need only contain those elements required for the particular situation. If elements are missing from the initial CAI message of a call, they shall be treated as zero.
This element defines the number of units incremented per interval. It is set in terms of LPLMN units/interval to a resolution as defined in the table above under RES.
This element defines the time interval for unitization, and is specified in seconds, to a resolution as defined in the table above under RES.
This element defines the scaling factor to convert from LPLMN units to HPLMN units. It is a dimensionless multiplier given to a resolution as defined in the table above under RES.
This element defines the number of units to be incremented on receipt of the message containing the CAI elements. It is specified in units of the LPLMN to a resolution as defined in the table above under RES.
This element defines the number of units incremented per data interval. It is set in terms of LPLMN units/interval, to a resolution as defined in the table above under RES.
This element defines the data usage interval for unitization, and is specified in segments (SEG), to a resolution as defined in the table above under RES., for Dedicated Access to the PSPDN (whether directly or via Dedicated PAD). It does not apply to circuit switched access to modems or PADs, (except Dedicated PAD's) or MS to MS calls.
This element defines the initial time interval for unitization, and is specified in seconds, to a resolution as defined in the table above under RES.
For the detailed mechanisms, the conditions given under subclause 4.3 (Special Processing) must be observed. The following therefore describes the process for a simple single call scenario, for either an incoming or outgoing call for the MS in any PLMN, including HPLMN:
On receipt of the CAI message, charging computation commences.
INITIAL/FIXED CHARGE: Element e4*e3 defines the number of HPLMN units to be incremented in the Current Call Meter (CCM, see below) on receipt of the CAI message.
INITIAL TIME RELATED CHARGE: On first receipt of the CAI message, timing commences immediately and MS timer CDUR is incremented, from zero, with a precision of at least 0.1 seconds. When CDUR reaches e7 (see special processing for the case where e7 is equal to zero) i.e. a full interval has been timed, then e1*e3 HPLMN units are added to the CCM. CDUR is then reset to zero to allow timing of the next interval to commence based on CAI element e2. Element e7 is not used further, unless it is updated via a new CAI message.
TIME RELATED CHARGE: On expiry of the interval defined by e7; e2 is applied and timing re commences immediately. MS timer CDUR is incremented, from zero, with a precision of at least 0.1 seconds. When CDUR reaches e2 i.e. a full interval has been timed, then e1*e3 HPLMN units are added to the CCM. CDUR is then reset to zero to allow timing of the next interval to commence, based on e2.
DATA RELATED CHARGE: On first receipt of non zero element e6, data segment counting commences immediately and MS counter SEG is incremented, from zero, by unity for each segment transferred. When SEG reaches e6 i.e. a full data interval has been counted, then e5*e3 HPLMN units are added to the CCM. SEG is then reset to zero to allow counting of the next data interval to commence.
This is required to accumulate the charging units generated by the current call and is capable of advising:
The current charge due for the call(s) in progress.
At the end of the call(s), the charge equivalent to the current call record in an itemized bill.
The CCM shall hold the value of the last call AOC, until the initiation of an outgoing call or acceptance of an incoming call, at which point it shall be reset to zero, regardless of the success of the initiation/acceptance attempt. This information is deleted when the MS is switched off or the SIM/USIM is removed.
The CCM is essential for the correct functioning of AOC, see subclauses 4.1 and 4.3, and is a component of the Mobile Equipment. The charging computation shall cease immediately on termination of a call, as indicated by the user or the network, or on failure of the call.
For multiple calls, CCM will advise the total charge of all the calls made and/or received during occupation of a traffic channel.
The Accumulated Call Meter accumulates the total units for both the current call and all preceding calls. The ACM is a function contained within the SIM/USIM. It is optional, but is essential for certain applications.
For security reasons, the SIM/USIM only allows the value of the ACM to be incremented, not decremented. Resetting of the ACM shall only be possible after presentation of PIN2.
If the ACMmax (see subclause 4.2.3) is valid, and the ACM becomes equal to or exceeds the value of the ACMmax, then all calls in progress, chargeable to the user (i.e. those calls that have a non zero AoC associated with them), shall be terminated by the ME once the chargeable interval determined by the CAI has elapsed. The ACM will be updated with the new value, which may be greater than the ACMmax value. The reason why the call has terminated shall be given to the user by means of an appropriate indication given to the user.
If the ACMmax is valid and the ACM is equal to or greater than the value of ACMmax, then no outgoing calls can be placed, except Emergency calls.
If the ACMmax is valid and the ACM is equal to or greater than the value of ACMmax, and an incoming call is received and subsequently a non zero CAI is received for that call, then the call shall be terminated by the ME with an appropriate indication given to the user.
This is the value that the subscriber can set, to limit the units which may be consumed by a user. The MS may provide for the means to set or update the ACMmax, using PIN2. The ACMmax is not valid if set to zero.
This is intended to enable the MS to calculate the cost of a call in a currency chosen by the subscriber. The subscriber may set the value of the home unit in the PUCT differently to the value of the unit published by the HPLMN in order to cover extra cost. An indication of the currency in use is part of the PUCT .
If e7 is zero or not sent in the CAI message, e2 applies and e7 is not used.
If e2 or e6 are set to zero, the relevant INT function shall handle the singularity by returning zero, thus disabling the relevant unitization process (call or data part).
On receipt of a subsequent e4, the MS shall transfer the value of e4*e3 to the CCM, by addition of e4*e3 to the current contents of the CCM.
When CDUR reaches e2 (or e7 as appropriate), e1*e3 is added to the CCM and CDUR is reset to zero, except when conditions given in (a) and (b) above, apply.
On receipt of new e1, e2 or e7 during a call, these new values are held in abeyance, until the value of the associated MS timer CDUR has reached the current e2 or e7 value as appropriate, and the processing as described in special processing item d) above has been completed. The new e1, e2 and/or e7 are then brought into operation. e7 is applied followed by e2, conditions a) and b) above determining the detailed processing.
Any update of e1, e2 and/or e7 during the time before CDUR is reset, shall supersede any values already held in abeyance.
If CDUR is not actively timing (i.e. due to e2 being zero, e7 being zero or the processing of e7 has been completed), then a new value of e2 and/or e7 is applied immediately as per a normal new call.
When SEG reaches e6, e5*e3 is added to the CCM and SEG is reset to zero, except where e6 is zero, where condition (b) above applies.
On receipt of a new e5 or e6 during the call, these new elements are held in abeyance, until the value of the associated MS counter SEG has reached the old e6 value, and the processing as described in special processing item (f) above has been completed. The resulting zero SEG and new e5 and e6 are then brought into operation.
Any update of e5 or e6 during the time before SEG is reset, shall supersede any values already held in abeyance.
If the old value of e6 was zero, then the new value of e5 and e6 is applied immediately.
The ACM shall be incremented when the CCM is incremented or once every 5 seconds, which ever is the longer period. Although the CCM is maintained with an accuracy of three places of decimals, the ACM shall be incremented and stored as integer units (i.e. no decimal places). The ACM shall be incremented by the difference between the present value of the CCM (rounded up) and the value of the CCM (rounded up) at the previous ACM incrementation.
A zero value for any of the CAI elements is valid and dealt with as described above.
Free calls should be implemented by sending a CAI message with appropriate zero elements.
On receipt of any CAI message from the network, provided the MS supports AoC, the MS it shall confirm receipt of the CAI message. An MS not supporting AoC as defined in TS 22.24 and TS 22.086 shall not confirm receipt of the message.
During multiple calls the network shall send, and the MS shall receive, CAI elements for each call separately. The CCM shall record the sum of all the charges for the services being used currently.
If the MS detects a radio link failure the MS shall suspend CDUR. If a subsequent call reestablishment is successful, CDUR shall be resumed when call reestablishment is complete.
When the MS requires a bearer change, e.g. from Audio to Video or vice versa, the SCUDIF Mode modify procedure is performed as described in TS 23.172. Depending on the operator's policy the success of the procedure may trigger a Facility message to convey new values for the CAI parameters. On receipt of new CAI values triggered by a service change based on the SCUDIF supplementary service, the MS shall reset CDUR and continue incrementing the CCM using the new CAI parameters as stated in subclause 4.3 of this specification. The MS shall add initial units to the CCM and measure units on a time basis using the new values.
For applicable calls, the PLMN shall send the CAI message to the MS immediately the called party answers. The PLMN derives the values of the elements to be sent in the CAI message in the following way:
The local PLMN, be it the HPLMN or the VPLMN, always sets values of e1, e2, e4, e5, e6 and e7 in terms of units of the LPLMN and according to its own tariff structure.
Element e3 is set according to variables of the LPLMN and the relevant HPLMN. If the LPLMN is the HPLMN (i.e. the MS is in its Home PLMN) then e3 shall be simplified to unity.
There shall be only one value of e3 for a given combination of HPLMN and VPLMN. This value may be simply loaded into the VMSC of the LPLMN using the Man Machine Interface commands, since it is not expected to vary frequently and is independent of the type of outgoing call.
For incoming calls the HPLMN determines the tariff and this tariff is dependent on the LPLMN of the MS. Therefore all the CAI elements are set according to the HPLMN tariff as a function of LPLMN.
In the case of the LPLMN being the HPLMN these elements may be set to zero assuming the HPLMN does not charge for incoming calls.
For roaming (i.e. where the LPLMN is not the HPLMN), in order to charge for incoming calls, the VPLMN must be provided with specific CAI values as defined by each HPLMN (e1i through e7i inclusive). This may be achieved by loading the offered HPLMN derived values via the VPLMN MMI.
Each VPLMN will require a set of 7 values per HPLMN with which the VPLMN has a roaming agreement i.e.:
e1i(h), e2i(h), e3(h), e4i(h), e5i(h), e6i(h) and e7i(h).
represents the 'h'th HPLMN with a roaming relationship with the VPLMN;
indicates the CAI element as determined by the 'h'th HPLMN, for the charging of incoming calls;
the same value of e3 is used for both incoming and outgoing calls;
exH(h) represents the value of the element x, given in terms of HPLMN units;
exi(h) represents the value of the element x as handled by the VPLMN.