Meter Point Administration Number
A Meter Point Administration Number, also known as MPAN, Supply Number or S-Number, is a 21-digit reference used in Great Britain to uniquely identify electricity supply points such as individual domestic residences. The gas equivalent is the Meter Point Reference Number. The system was introduced in 1998 in order to provide a competitive environment for the electricity companies, and allows consumers to switch their supplier easily as well as simplifying administration. Although the name suggests that an MPAN refers to a particular meter, an MPAN can have several meters associated with it,[1] or indeed none where it is an unmetered supply. A supply receiving power from the network operator (DNO) has an Import MPAN, while generation and microgeneration projects feeding back into the DNO network are given Export MPANs.[1]
Structure
An MPAN is commonly separated into two sections: the core and the supplementary data. The core is the final 13 digits and is the unique identifier. The supplementary data gives information about the characteristics of the supply and is the responsibility of the supplier.
The full MPAN is required to be depicted on electricity bills (the boxes on the top and bottom line are generally unaligned):[2]
The core data is on the second line, the supplementary data on the first.
Profile Class (PC)
The first two digits of a full MPAN reflect its profile class.[3]
00 | Half-hourly supply (import and export) |
---|---|
01 | Domestic Unrestricted |
02 | Domestic Economy Meter of 2 or more rates |
03 | Non-Domestic Unrestricted |
04 | Non-Domestic Economy 7 |
05 | Non-domestic, with MD recording capability and with LF less than or equal to 20% |
06 | Non-domestic, with MD recording capability and with LF less than or equal to 30% and greater than 20% |
07 | Non-domestic, with MD recording capability and with LF less than or equal to 40% and greater than 30% |
08 | Non-domestic, with MD recording capability and with LF greater than 40% (also all NHH export MSIDs) |
Profile class 00 supplies are half-hourly (HH) metered, i.e. they record electricity consumption for every half hour of every day, and supplies of the other profile classes are non-half-hourly (NHH) metered. A NHH supply must be upgraded to HH for:[4]
“ | Any Metering System where the average of the maximum monthly electrical demands in the three months of highest demand, either in:
exceeds 100kW. |
” |
HH data is recorded by the meter and will be collected usually by either an onsite download, or via a GSM, SMS, GPRS or telephone line.[2]
Domestic NHH import MPANs will always have a profile class of 01 or 02. Domestic NHH export MPANs are allocated a profile class of 08.[3]
Meter Time Switch Class (MTC)
The MTC is a 3 digit code that reflects the various registers a meter may have, whether it be a Single Rate, Day Night split, or even a Seasonal Time of Day.[5][6]
001 - 399 | DNO specific |
400 - 499 | Reserved |
500 - 509 | Codes for related Metering Systems - common across the Industry |
510 - 799 | Codes for related Metering Systems - DNO specific |
800 - 999 | Codes common across the Industry |
Line Loss Factor Class (LLFC)
The Line Loss Factor Class or LLFC[7] is used to calculate the related Distribution Use of System (DUoS) charges for the MPAN. The figure reflects both the amount of distribution infrastructure used to supply the exit point and the amount of energy lost through heating of cables, transformers, etc.[2]
Core
The MPAN core is the final 13 digits of the MPAN, and uniquely identifies an exit point. It consists of the two-digit Distributor ID, followed by an eight-digit unique identifier, then by two digits and a single check digit.
Distributor ID
Great Britain is divided into fourteen distribution areas. For each area a single company, the distribution network operator, has a licence to distribute electricity.[8] They effectively carry electricity from the National Grid to the exit point (each has a unique MPAN and a possibility of several meters) where the customers are. The owner of the distribution network charges electricity suppliers for carrying the electricity in their network. Their DNO licensed regions are the same geographic areas as the old nationalised electricity boards.[8]
ID | Name | Operator | Phone Number | Market Participant Id[9] | GSP Group ID[10] |
---|---|---|---|---|---|
10 | Eastern England | UK Power Networks | 0845[n 1] 601-5467 | EELC | _A |
11 | East Midlands | Western Power Distribution | 0845[n 1] 601-5972 | EMEB | _B |
12 | London | UK Power Networks | 0800[n 2] 028-0247 | LOND | _C |
13 | Merseyside and Northern Wales | ScottishPower | 0845[n 1] 270-9107 | MANW | _D |
14 | West Midlands | Western Power Distribution | 0845[n 1] 601-5972 | MIDE | _E |
15 | North Eastern England | Northern Powergrid | 0845[n 1] 330-0889 | NEEB | _F |
16 | North Western England | Electricity North West | 0870 751-0093 | NORW | _G |
17 | Northern Scotland | SSE Power Distribution | 0845[n 1] 744-4555 | HYDE | _P |
18 | Southern Scotland | ScottishPower | 0845[n 1] 270-9107 | SPOW | _N |
19 | South Eastern England | UK Power Networks | 0845[n 1] 601-5467 | SEEB | _J |
20 | Southern England | SSE Power Distribution | 0845[n 1] 744-4555 | SOUT | _H |
21 | Southern Wales | Western Power Distribution | 0845[n 1] 601-5972 | SWAE | _K |
22 | South Western England | Western Power Distribution | 0845[n 1] 601-5972 | SWEB | _L |
23 | Yorkshire | Northern Powergrid | 0845[n 1] 330-0889 | YELG | _M |
In addition to the distribution network operators noted above who are licensed for a specific geographic area there are also independent distribution network operators (IDNO). IDNOs own and operate electricity distribution networks which are mostly network extensions connected to the existing distribution network, e.g. to serve new housing developments. Scottish Hydro Electric Power Distribution also provide distribution services in South Scotland as an IDNO and Southern Electric Power Distribution provide IDNO services in all other England and Wales areas. There are five IDNOs with no "base" area and these are detailed in the table below:[11]
ID | Name | Licensee | Market Participant Id[9] |
---|---|---|---|
24 | GTC | Independent Power Networks | IPNL |
25 | ESP Electricity | ESP Electricity | LENG |
26 | Energetics | Global Utilities Connections (Electric) Ltd | GUCL |
27 | GTC | The Electricity Network Company Ltd | ETCL |
28 | EDF IDNO | UK Power Networks (IDNO) Ltd | EDFI |
29 | Harlaxton Energy Networks Ltd | HARL | |
30 | Peel Electricity Networks Ltd | PENL |
Check Digit
The final digit in the MPAN is the check digit, and validates the previous 12 (the core) using a modulus 11 test. The check digit is calculated thus:
- Multiply the first digit by 3
- Multiply the second digit by the next prime number (5)
- Repeat this for each digit (missing 11 out on the list of prime numbers for the purposes of this algorithm.)
- Add up all these products.
- The check digit is the sum modulo 11 modulo 10.[12]
Sample MPAN numbers located in discussion, under 'Algorithm verification' |
---|
The algorithm in Java is:
int checkDigit(String toCheck) {
int[] primes = {3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43};
int sum = 0;
for (int i = 0; i < primes.length; i++) {
sum += Character.getNumericValue(toCheck.charAt(i)) * primes[i];
}
return sum % 11 % 10;
}
In Matlab: function check = checkdigits(MPANCore)
% MPANCore is a cell array of 13 digit strings.
% Check is a boolean vector the same size as MPANCore.
% (100,000 MPANs in 0.05 seconds.)
core = double(char(MPANCore)')-48; c = core(1:12,:);
p = [3 5 7 13 17 19 23 29 31 37 41 43]' * ones(1,size(c,2));
m = mod(mod(sum(p.*c),11),10); k = core(13,:); check = m==k;
In Pascal / Delphi: function CheckDigit(MPANCore : array of Byte): Integer;
const
Primes : array [0..11] of Byte = (3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43);
var
i : integer;
begin
Result := 0;
for i := 0 to 11 do
Result := Result + (MPANCore[i] * Primes[i]);
Result := Result mod 11 mod 10;
end;
In Ruby: # where mpan is a string
def check_digit(mpan)
primes = [3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43]
(0..11).inject(0) { |sum, n| sum + (mpan[n, 1].to_i * primes[n]) } % 11 % 10
end
In Visual Basic: Public Function mpancheck(mpan As String) As Boolean
' Michael Diarmid (EDF)
' Updated 04/08/2010 MD
' Returns True / False if MPAN is valid
On Error GoTo inval
Dim c As Variant, sum As Integer, i as Byte
c = Array(0, 3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43)
For i = 1 To 12
sum = sum + (Mid(mpan, i, 1) * c(i))
Next i
If Right(mpan, 1) = ((sum Mod 11) Mod 10) Then
mpancheck = True
Else
inval:
mpancheck = False
End If
End Function
In VisualBasic.Net 2010: Public Function mpancheck(mpan As String) As Boolean
' Michael Diarmid (EDF)
' Updated 04/08/2010 MD
' Returns True / False if MPAN is valid
' Revised by Tym Huckin (16/03/2012) for VB 2010
On Error GoTo inval
Dim c As Object, sum As Integer
c = New List(Of Integer) From {0, 3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43}
For i = 1 To 12
sum = sum + (Mid(mpan, i, 1) * c(i))
Next i
If sRight(mpan, 1) = ((sum Mod 11) Mod 10) Then
Return True
Else
inval:
Return False
End If
End Function
Public Function sRight(sSTRING As String, iLEN As Integer) As String
Dim sRET As String = ""
Try
If iLEN >= Len(sSTRING) Then
sRET = sSTRING
End If
sRET = Mid(sSTRING, Len(sSTRING) - (iLEN - 1), iLEN)
Catch ex As Exception
sRET = ""
End Try
Return sRET
End Function
Or VB.Net 2010, avoiding the use of VB6 Compatibility Library : ''' <summary>
''' Validates an MPAN number
''' </summary>
''' <param name="mpan">At least the last 13 digits from the MPAN number, including the check digit,
''' expressed as a string</param>
''' <returns>True for valid, otherwise false</returns>
''' <remarks>Written by Martin Milan, May 2012, avoiding use of VB6 compatibility library, for .Net 4.0 Client Profile</remarks>
Public Function MPANIsValid(mpan As String) As Boolean
' Set initial conditions.
Dim validationResult As Boolean = False
If mpan.Length > 12 Then
'Read the check digit into an Integer variable.
Dim intCheckDigit As Integer
If Integer.TryParse(mpan.Substring(mpan.Length - 1), intCheckDigit) Then
Dim strTest As String = mpan.Substring(mpan.Length-13,12)
Dim intPrimes() As Integer = { 3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43}
Dim productTotal As Integer = 0
Dim blnError As Boolean = False
For i As Integer = 0 To 11 Step 1
Dim intTestDigit As Integer
If Integer.TryParse(mpan.Substring(i,1), intTestDigit) Then
productTotal += (intTestDigit * intPrimes(i))
Else
blnError = True
Exit For
End If
Next
If Not blnError Then
validationResult = ((productTotal Mod 11 Mod 10) = intCheckDigit)
Else
validationResult = False ' Due to a parsing error.
End If
End If
End If
Return validationResult
End Function
In C#: /// <summary>
/// Validates an MPAN number
/// </summary>
/// <param name="mpan">At least the last 13 digits from the MPAN number, including the check digit,
/// expressed as a string</param>
/// <returns>True for valid, otherwise false</returns>
/// <remarks>Written by Martin Milan, May 2012, for .Net 4.0 Client Profile</remarks>
public static bool MPANIsValid(string mpan)
{
// Set initial conditions.
bool validationResult = false;
if (mpan.Length > 12) {
//Read the check digit into an Integer variable.
int intCheckDigit = 0;
if (int.TryParse(mpan.Substring(mpan.Length - 1), out intCheckDigit)) {
string strTest = mpan.Substring(mpan.Length - 13, 12);
int[] intPrimes = {3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43};
int productTotal = 0;
bool blnError = false;
for (int i = 0; i <= 11; i++) {
int intTestDigit = 0;
if (int.TryParse(mpan.Substring(i, 1), out intTestDigit)) {
productTotal += (intTestDigit * intPrimes[i]);
} else {
blnError = true;
break;
}
}
if (!blnError) {
validationResult = ((productTotal % 11 % 10) == intCheckDigit);
} else {
validationResult = false; // Due to a parsing error.
}
}
}
return validationResult;
}
As a formula in Excel: 'MPAN in Cell A1
=IF(TEXT((MOD(MOD(SUM((MID(A1,1,1)*3),(MID(A1,2,1)*5),(MID(A1,3,1)*7),(MID(A1,4,1)*13),
(MID(A1,5,1)*17),(MID(A1,6,1)*19),(MID(A1,7,1)*23),(MID(A1,8,1)*29),(MID(A1,9,1)*31),
(MID(A1,10,1)*37),(MID(A1,11,1)*41),(MID(A1,12,1)*43)),11),10)),0)=TEXT(TRIM(RIGHT(A1,1)),
0),"Correct","Invalid Mpan")
In Python: def check_digit(mpan):
"""
@mpan = The first 12 digits of the MPAN number, excluding the check digit
"""
return sum(prime * int(digit) for prime, digit in \
zip([3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43], mpan)) % 11 % 10
In PL/SQL: create or replace function mpan_check(mpan in varchar2) return boolean is
--CDP ATKINSON
res integer := 0;
TYPE prime_tab IS VARRAY(12) OF integer;
primes prime_tab := prime_tab (3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43);
begin
for i in 1..12 loop
res := res + to_number( substr( mpan, i, 1) ) * primes (i);
end loop;
return to_char(mod(mod(res , 11) , 10)) = substr(mpan,13,1);
end mpan_check;
In Javascript: //Oliver Grimes
function checkMPAN(mpan) {
var primes = [3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43];
var sum = 0;
var m = mpan.toString();
if ((m.length - 1) == primes.length) {
for (var i = 0; i < primes.length; i++) {
sum += parseInt(m.charAt(i)) * primes[i];
}
return (((sum % 11 % 10) == m.charAt(12)) ? true : false);
}
else {
return false;
}
}
In PHP: public function checkMPAN($mpan)
{
$primes = array(3, 5, 7, 13, 17, 19, 23, 29, 31, 37, 41, 43);
$sum = 0;
$mpan = str_split($mpan);
if ((count($mpan) - 1) == count($primes)) {
for ($i = 0; $i < count($primes); $i++) {
$sum += $mpan[$i] * $primes[$i];
}
return (($sum % 11 % 10) == end($mpan)) ? true : false;
} else {
return false;
}
}
In SQL Server: CREATE FUNCTION is_valid_mpan
( @mpan VARCHAR(50) )
RETURNS INT
AS
BEGIN
--Tim Foster (2013-01-04)
DECLARE @is_mpan INT
,@x INT = 1
,@sum INT = 0
DECLARE @arr TABLE (id INT IDENTITY(1, 1), val INT)
INSERT INTO @arr(val) VALUES(3),(5),(7),(13),(17),(19),(23),(29),(31),(37),(41),(43)
WHILE @x <= 12
BEGIN
SELECT @sum = @sum + (SUBSTRING(@mpan, @x, 1) * val)
FROM @arr
WHERE id = @x
SELECT @x = @x + 1
END
IF RIGHT(@mpan, 1) = ((@sum % 11) % 10)
BEGIN
SELECT @is_mpan = 1
END
ELSE
BEGIN
SELECT @is_mpan = 0
END
RETURN @is_mpan
END
|
MPAN state
The supply identified by the MPAN can exist in one of four states: disconnected, de-energised, live, and new.
- Disconnected: The service cable has been removed and the MPAN will not be reused.
- De-energised: The service cable is in place, but the fuse has been removed. The meter remains connected to the distribution network, but no electricity can be used.
- Live: Both the service cable and the fuse are in place. The supply is fully operational.
- New: A new MPAN has been generated however the top line (supplementary data consisting of the Profile Class and Meter Time-Switch Code) is not yet complete. The service cable may or may not be installed.
These terms are by no means standardised. For example, a disconnected supply might be referred to as a 'dead' supply.
Export MPANs
The vast majority of MPANs are import MPANs, used where energy is being consumed. However, if a supply exports to the distribution network, then an export MPAN is issued. If a supply both imports and exports, then both an import MPAN and export MPAN are issued.
Microgeneration
Formerly, export MPANs required a half-hourly compliant meter to be installed. Since 2003, it has been possible for microgeneration projects, with a capacity of 30 kW or below to have a non-half-hourly meter, to export back into the distribution network. The uptake was slow with the first microgeneration export MPAN being issued in June 2005. Some suppliers may not bother to register the export MPAN in MPAS as the revenue is so small. Export capacity over 30 kW is required to be half hourly metered.
Metered Supply Point
The Metered Supply Point (MSP) is the point at which the meter measuring a customer's consumption is located. It is thus also the point at which either the distribution network operator's supply , or the building network operators lateral cable terminates and the customer's equipment begins. In order to firmly establish a supply's MSP, the MPAN needs to be associated with a meter serial number.
Although it is common for an MPAN to be associated with one meter serial number, in some cases there is a many-to-many relationship. For example, one meter could be associated with both an import and an export MPAN, or one MPAN could be measured by three separate meters.
Metering Code of Practice[13]
Code | Range | Configuration |
---|---|---|
COP10 | less than 72 kW | One HH whole current meter installed. Introduced for Feb 2009[14] |
COP5 | less than 1MW | One HH meter installed |
COP3 | 1MW to 10MW | Two meters installed, main and check, both recording the same load. The main meter being used for billing. |
COP2 | 10MW to 100MW | Two meters installed as in COP3, but higher accuracy class meters. |
COP1 | > 100MW | Very few sites in the UK at this level, generally power stations and connections with the National Grid. |
Unmetered supplies[15]
It is possible for small predictable supplies to be unmetered. Typical unmetered supplies are street lights, traffic signals, signs and bollards but can also include telephone kiosks, CCTV and advertising displays.
For a piece of equipment to be connected to the distribution networks via an unmetered connection it should not exceed 500 watts and operate in a predictable nature and cannot be manually turned on at the end users request, typically the equipment would either be in operation and taking a supply of electricity 24 hours a day or be controlled by a photocell. A photocell is most commonly used with street lights and is the small dome unit which can be seen on the very top of the lighting column.
It is the customer's responsibility to maintain an accurate and up-to-date inventory of unmetered supplies, and to inform the UMSO (UnMetered Supplies Operator) of all changes to the connected equipment.
Larger local authorities tend to trade their unmetered energy on a half-hourly basis. To do so, they employ a Meter Administrator[16][17] who will use daily data from a PECU Array which is then used to calculate the energy consumptions.
A PECU Array is a device that holds a representative account of the photocells that authority uses on their street lights or traffic signals they operate, there are many different types of photocell (electronic photocell, thermal and hybrid for example) that can be used. Until 2014, the process of retrieving data from the PECU array relied on the Meter Administrator using the LAMP or Lailoken[18] equivalent meter programs, or for the Local Authority who own the Array to use the Ganieda[19] software. The Array only held a limited amount of data in its 'rolling barrel' data log. For this reason it was important that whichever software was used, it had to be downloaded daily to avoid the risk of losing event data. In June 2014, ICTIS (UK) Ltd (bought out by Tym Huckin Ltd in December 2015) launched the PECU Array 2.0, which stores all its data off the array, in the cloud. Not only did this provide an unlimited data store, but it made it possible for the PECU Array owners to have direct and immediate access to their data via a dedicated website.[20] It also enabled Lailoken to retrieve the event data more efficiently and reduce the overall processing time for the Meter Administrators.
By trading energy as unmetered half-hourly the authority will accurately pay for the energy consumed by their declared unmetered equipment, and because the data is downloaded daily the authorities will see their energy invoices change throughout the year to represent the changes in season and daily lighting levels.
Once the daily calculations have been performed by the Meter Administrator the new revised energy consumption are sent to the appointed Data Collector who will in turn provided them to the appointed electricity supplier who invoices the customer for the electricity used. Some Meter Administrators can provide instant access to the settlement data[21] for the Local Authorities to see and download at their convenience. This sort of service enables the Lighting Authorities to be more proactive in their energy management.
If however the Unmetered Supplies are being traded as Non Half Hourly the UMSO undertakes the responsibility to calculate an EAC (Estimated Annual Consumption), this is done using a simple formula which takes into account the Circuit Watts of the equipment and the Annual Hours of Operations.
For example, a piece of equipment that is in use 24hrs per day will have annual hours of 8766. If we say a CCTV camera is rated at 24 circuit watts and operating 24/7 the EAC would be 210.384kWh, the calculation is Circuit Watts x Annual Hours Divided by 1000 = Kilowatt Hours (kWh).
Example 24 x 8766 / 1000 = 210.384kWh, 1kWh is a Unit of Electricity.
If the equipment if Street Lighting the same process is used however the Annual Hours will change as each Photocell is assigned a set number of Annual Hours which indicate how and when the lights turn on & off. These Annual Hours have been set by Elexon and are not locally agreed with the UMSO by the customer.
Once an EAC calculation has taken place an EAC Certificate is provided to the customer's appointed Electricity Supplier for billing, with an electronic copy of the EAC being sent to the appointed Data Collector.
The UMSO does not make a charge to the Unmetered Customer which is why an appointed Supplier invoices for the electricity consumptions, however the DNO (for whom the UMSO is part of) do levy a charge to the electricity supplier for the delivery of the electricity to the customer's Unmetered equipment. These are known as DUoS charges (Distribution Use of System).
The electricity supplier pays a DUoS Charge based on the information held by the Data Collector for settlement purposes.
Meter Point Administration System
Each DNO operates a Meter Point Administration System (MPAS) which holds the following information for each MPAN:
- Supplier
- Data Collector (DC)
- Data Aggregator (DA)
- Meter Operator (MOP) or Meter Administrator for HH unmetered
- Customer
- Address of the exit point
- Associated MPANs
- MPAN state
- Profile Class (PC)
- Line Loss Factor Class (LLFC)
- Meter Time Switch Class (MTC)
- GSP Group
MPRS is the name of the software package that implements the MPAS system for all DNOs.[22] Since MPRS is used by most DNOs it is often used interchangeably with the term MPAS.
ECOES
ECOES is a website that allows users and authorised industry parties to search for supply details (past and present) using such things as the 13-digit MPAN bottom line number, the meter serial number or the postcode. The user can determine a wide range of data relating to the supply including the full address, meter details, the current energisation status and also the appointed parties (i.e. the supplier, distributor, MOP, DC and DA). The site is populated from information sent from the supplier regarding the metering system.[23]
Only non-domestic users (with two valid MPAN's that are not Class 1 or 2) can register to access this service.[24] To apply for access to ECOES, just visit www.ecoes.co.uk and follow the process for application detailed there.
See also
- Energy accounting software
- Meter operator
- Mains electricity
- Distribution network operator
- Electrical power industry
- Electricity billing in the UK
External links
- Specific definitions of meter timeswitch codes can be found on the MRASCo documentation page.
- ECOES (Electricity Central Online Enquiry Service)
- Implementations of the MPAN check digit algorithm
Notes
References
- 1 2 Elexon. "Settlement of Microgeneration Export" (PDF). Archived from the original (PDF) on October 9, 2007.
- 1 2 3 Energy Linx (2007). "MPAN (Meter Point Administration Number)". Retrieved 2007-02-22.
- 1 2 Elexon. "BSCP516 - Balancing and Settlement Code" (PDF). Retrieved 2011-07-25.
- ↑ Elexon (August 2006). "Guidance Note for Change of Measurement Class and Change of Profile Class" (PDF). Archived from the original (PDF) on February 28, 2006. Retrieved 2010-04-26.
- ↑ MRASCo. "The Rough Guide To MTCs" (PDF). Retrieved 2011-02-05.
- ↑ Elexon. "Meter Timeswitch Class table". Archived from the original on April 26, 2011. Retrieved 2011-08-23.
- ↑ "Line Loss Factor Class(es)". Elexon Glossary. Retrieved 2013-01-27.
- 1 2 EnergyLinx (2007). "MPAN Request (Meter Point Administration Number Request". Retrieved 2007-02-22.
- 1 2 Elexon. "Market Participant Role". Retrieved 2009-12-20.
- ↑ Elexon. "GSP Group". Retrieved 2010-06-22.
- ↑ Ofgem. "Notice under section 11 of the Electricity Act 1989" (PDF). Archived from the original (PDF) on December 30, 2005. Retrieved 2007-02-22.
- ↑ Energy Retail Association. "Data Item Definition v1 final" (PDF). p. 23. Archived from the original (PDF) on 2007-09-25. Retrieved 2014-02-25.
- ↑ See http://www.elexon.co.uk/bscrelateddocs/codesofpractice/
- ↑ "Change Implementation".
- ↑ See http://www.elexon.co.uk/participating/unmeteredSupplies.aspx Archived January 3, 2009, at the Wayback Machine.
- ↑ Power Data Associates Ltd. "Meter Administrator".
- ↑ ICTIS (UK) Ltd. "Meter Administrator".
- ↑ ICTIS (UK) Ltd. "Lailoken".
- ↑ ICTIS (UK) Ltd. "Ganieda".
- ↑ ICTIS (UK) Ltd. "PECU Array 2.0".
- ↑ ICTIS (UK) Ltd. "Online Settlement Records".
- ↑ St. Clements Services Ltd. "Metering Point Registration System". Retrieved 2008-05-29.
- ↑ MRASCO. "Access to ECOES Data". Retrieved 2009-07-11.
- ↑ "Briefing_Note_on_Customer_Access_NDC_2" (PDF). ECOES. MRASCO. Retrieved 25 June 2015.