1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4** Copyright 2012, The Android Open Source Project
5**
6** Licensed under the Apache License, Version 2.0 (the "License");
7** you may not use this file except in compliance with the License.
8** You may obtain a copy of the License at
9**
10**     http://www.apache.org/licenses/LICENSE-2.0
11**
12** Unless required by applicable law or agreed to in writing, software
13** distributed under the License is distributed on an "AS IS" BASIS,
14** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15** See the License for the specific language governing permissions and
16** limitations under the License.
17*/
18-->
19
20<!-- Regex patterns for SMS short codes by country. -->
21<shortcodes>
22
23    <!-- The country attribute is the ISO country code of the user's account (from SIM card or NV).
24         The pattern attribute is a regex that matches all SMS short codes for the country.
25         The premium attribute is a regex that matches premium rate SMS short codes.
26         The free attribute matches short codes that we know will not cost the user, such as
27         emergency numbers. The standard attribute matches short codes that are billed at the
28         standard SMS rate. The user is warned when the destination phone number matches the
29         "pattern" or "premium" regexes, and does not match the "free" or "standard" regexes. -->
30
31    <!-- Harmonised European Short Codes are 6 digit numbers starting with 116 (free helplines).
32         Premium patterns include short codes from: http://aonebill.com/coverage&tariffs
33         and http://mobilcent.com/info-worldwide.asp and extracted from:
34         http://smscoin.net/software/engine/WordPress/Paid+SMS-registration/ -->
35
36    <!-- Arab Emirates -->
37    <shortcode country="ae" pattern="\\d{1,5}" free="1017|1355|3214" />
38
39    <!-- Albania: 5 digits, known short codes listed -->
40    <shortcode country="al" pattern="\\d{5}" premium="15191|55[56]00" />
41
42    <!-- Argentina: 5 digits, known short codes listed -->
43    <shortcode country="ar" pattern="\\d{5}" free="11711|28291|44077" />
44
45    <!-- Armenia: 3-4 digits, emergency numbers 10[123] -->
46    <shortcode country="am" pattern="\\d{3,4}" premium="11[2456]1|3024" free="10[123]" />
47
48    <!-- Austria: 10 digits, premium prefix 09xx, plus EU -->
49    <shortcode country="at" pattern="11\\d{4}" premium="09.*" free="116\\d{3}" />
50
51    <!-- Australia: 6 or 8 digits starting with "19" -->
52    <shortcode country="au" pattern="19(?:\\d{4}|\\d{6})" premium="19998882|19944444" />
53
54    <!-- Azerbaijan: 4-5 digits, known premium codes listed -->
55    <shortcode country="az" pattern="\\d{4,5}" premium="330[12]|87744|901[234]|93(?:94|101)|9426|9525" />
56
57    <!-- Belgium: 4 digits, plus EU: http://www.mobileweb.be/en/mobileweb/sms-numberplan.asp -->
58    <shortcode country="be" premium="\\d{4}" free="8\\d{3}|116\\d{3}" />
59
60    <!-- Bulgaria: 4-5 digits, plus EU -->
61    <shortcode country="bg" pattern="\\d{4,5}" premium="18(?:16|423)|19(?:1[56]|35)" free="116\\d{3}|1988|1490" />
62
63    <!-- Bahrain: 1-5 digits (standard system default, not country specific) -->
64    <shortcode country="bh" pattern="\\d{1,5}" free="81181|85999" />
65
66    <!-- Brazil: 1-5 digits (standard system default, not country specific) -->
67    <shortcode country="br" pattern="\\d{1,5}" free="6000[012]\\d|876|5500|9963|4141|8000" />
68
69    <!-- Belarus: 4 digits -->
70    <shortcode country="by" pattern="\\d{4}" premium="3336|4161|444[4689]|501[34]|7781" />
71
72    <!-- Canada: 5-6 digits -->
73    <shortcode country="ca" pattern="\\d{5,6}" premium="60999|88188|43030" standard="244444" free="455677" />
74
75    <!-- Switzerland: 3-5 digits: http://www.swisscom.ch/fxres/kmu/thirdpartybusiness_code_of_conduct_en.pdf -->
76    <shortcode country="ch" pattern="[2-9]\\d{2,4}" premium="543|83111|30118" free="98765|30075|30047" />
77
78    <!-- Chile: 4-5 digits (not confirmed), known premium codes listed -->
79    <shortcode country="cl" pattern="\\d{4,5}" free="9963|9240|1038" />
80
81    <!-- China: premium shortcodes start with "1066", free shortcodes start with "1065":
82         http://clients.txtnation.com/entries/197192-china-premium-sms-short-code-requirements -->
83    <shortcode country="cn" premium="1066.*" free="1065.*" />
84
85    <!-- Colombia: 1-6 digits (not confirmed) -->
86    <shortcode country="co" pattern="\\d{1,6}" free="890350|908160|892255|898002|898880|899960|899948|87739|85517" />
87
88    <!-- Cyprus: 4-6 digits (not confirmed), known premium codes listed, plus EU -->
89    <shortcode country="cy" pattern="\\d{4,6}" premium="7510" free="116\\d{3}" />
90
91    <!-- Czechia: Premium numbers start with 90, and are either 5 or 7 digits (5 digits is a
92         subscription request, you will be charged for the messages received, but it's necessary
93         to warn on the _request_ as that's the last chance to stop), plus EU:
94         https://www.t-mobile.cz/platebni-a-premium-sms
95         https://www.vodafone.cz/pece/vyuctovani-platby-kredit/platby-mobilem/cena-premium-sms/ -->
96    <shortcode country="cz" premium="90\\d{5}|90\\d{3}" free="116\\d{3}" />
97
98    <!-- Germany: 4-5 digits plus 1232xxx (premium codes from http://www.vodafone.de/infofaxe/537.pdf and http://premiumdienste.eplus.de/pdf/kodex.pdf), plus EU. To keep the premium regex from being too large, it only includes payment processors that have been used by SMS malware, with the regular pattern matching the other premium short codes. -->
99    <shortcode country="de" pattern="\\d{4,5}|1232\\d{3}" premium="11(?:111|833)|1232(?:013|021|060|075|286|358)|118(?:44|80|86)|20[25]00|220(?:21|22|88|99)|221(?:14|21)|223(?:44|53|77)|224[13]0|225(?:20|59|90)|226(?:06|10|20|26|30|40|56|70)|227(?:07|33|39|66|76|78|79|88|99)|228(?:08|11|66|77)|23300|30030|3[12347]000|330(?:33|55|66)|33(?:233|331|366|533)|34(?:34|567)|37000|40(?:040|123|444|[3568]00)|41(?:010|414)|44(?:000|044|344|44[24]|544)|50005|50100|50123|50555|51000|52(?:255|783)|54(?:100|2542)|55(?:077|[24]00|222|333|55|[12369]55)|56(?:789|886)|60800|6[13]000|66(?:[12348]66|566|766|777|88|999)|68888|70(?:07|123|777)|76766|77(?:007|070|222|444|[567]77)|80(?:008|123|888)|82(?:002|[378]00|323|444|472|474|488|727)|83(?:005|[169]00|333|830)|84(?:141|300|32[34]|343|488|499|777|888)|85888|86(?:188|566|640|644|650|677|868|888)|870[24]9|871(?:23|[49]9)|872(?:1[0-8]|49|99)|87499|875(?:49|55|99)|876(?:0[1367]|1[1245678]|54|99)|877(?:00|99)|878(?:15|25|3[567]|8[12])|87999|880(?:08|44|55|77|99)|88688|888(?:03|10|8|89)|8899|90(?:009|999)|99999" free="116\\d{3}|81214|81215|47529|70296|83782|3011|73240|72438" />
100
101    <!-- Denmark: see http://iprs.webspacecommerce.com/Denmark-Premium-Rate-Numbers -->
102    <shortcode country="dk" pattern="\\d{4,5}" premium="1\\d{3}" free="116\\d{3}|4665" />
103
104    <!-- Estonia: short codes 3-5 digits starting with 1, plus premium 7 digit numbers starting with 90, plus EU.
105         http://www.tja.ee/public/documents/Elektrooniline_side/Oigusaktid/ENG/Estonian_Numbering_Plan_annex_06_09_2010.mht -->
106    <shortcode country="ee" pattern="1\\d{2,4}" premium="90\\d{5}|15330|1701[0-3]" free="116\\d{3}|95034" />
107
108    <!-- Egypt: 4 digits, known codes listed -->
109    <shortcode country="eg" pattern="\\d{4}" free="1499" />
110
111    <!-- Spain: 5-6 digits: 25xxx, 27xxx, 280xx, 35xxx, 37xxx, 795xxx, 797xxx, 995xxx, 997xxx, plus EU.
112         http://www.legallink.es/?q=en/content/which-current-regulatory-status-premium-rate-services-spain -->
113    <shortcode country="es" premium="[23][57]\\d{3}|280\\d{2}|[79]9[57]\\d{3}" free="116\\d{3}|22791|222145|22189" />
114
115    <!-- Finland: 5-6 digits, premium 0600, 0700: http://en.wikipedia.org/wiki/Telephone_numbers_in_Finland -->
116    <shortcode country="fi" pattern="\\d{5,6}" premium="0600.*|0700.*|171(?:59|63)" free="116\\d{3}|14789|17110" />
117
118    <!-- France: 5 digits, free: 3xxxx, premium [4-8]xxxx, plus EU:
119         http://clients.txtnation.com/entries/161972-france-premium-sms-short-code-requirements,
120         visual voicemail code for Orange: 21101 -->
121    <shortcode country="fr" premium="[4-8]\\d{4}" free="3\\d{4}|116\\d{3}|21101|20366|555|2051" />
122
123    <!-- United Kingdom (Great Britain): 4-6 digits, common codes [5-8]xxxx, plus EU:
124         http://www.short-codes.com/media/Co-regulatoryCodeofPracticeforcommonshortcodes170206.pdf,
125         visual voicemail code for EE: 887 -->
126    <shortcode country="gb" pattern="\\d{4,6}" premium="[5-8]\\d{4}" free="116\\d{3}|2020|35890|61002|61202|887|83669|34664|40406|60174|7726|37726|88555|9017|9018" />
127
128    <!-- Georgia: 4 digits, known premium codes listed -->
129    <shortcode country="ge" pattern="\\d{4}" premium="801[234]|888[239]" />
130
131    <!-- Ghana: 4 digits, known premium codes listed -->
132    <shortcode country="gh" pattern="\\d{4}" free="5041" />
133
134    <!-- Greece: 5 digits (54xxx, 19yxx, x=0-9, y=0-5): http://www.cmtelecom.com/premium-sms/greece -->
135    <shortcode country="gr" pattern="\\d{5}" premium="54\\d{3}|19[0-5]\\d{2}" free="116\\d{3}|12115" />
136
137    <!-- Croatia -->
138    <shortcode country="hr" pattern="\\d{1,5}" free="13062" />
139
140    <!-- Hungary: 4 or 10 digits starting with 1 or 0, plus EU:
141         http://clients.txtnation.com/entries/209633-hungary-premium-sms-short-code-regulations -->
142    <shortcode country="hu" pattern="[01](?:\\d{3}|\\d{9})" premium="0691227910|1784" free="116\\d{3}" />
143
144    <!-- India: 1-5 digits (standard system default, not country specific) -->
145    <shortcode country="in" pattern="\\d{1,5}" free="59336|53969" />
146
147    <!-- Indonesia: 1-5 digits (standard system default, not country specific) -->
148    <shortcode country="id" pattern="\\d{1,5}" free="99477|6006|46645|363" />
149
150    <!-- Ireland: 5 digits, 5xxxx (50xxx=free, 5[12]xxx=standard), plus EU:
151         http://www.comreg.ie/_fileupload/publications/ComReg1117.pdf -->
152    <shortcode country="ie" pattern="\\d{5}" premium="5[3-9]\\d{3}" free="50\\d{3}|116\\d{3}" standard="5[12]\\d{3}" />
153
154    <!-- Israel: 4 digits, known premium codes listed -->
155    <shortcode country="il" pattern="\\d{4}" premium="4422|4545" />
156
157    <!-- Italy: 5 digits (premium=41xxx,42xxx), plus EU:
158         https://www.itu.int/dms_pub/itu-t/oth/02/02/T020200006B0001PDFE.pdf -->
159    <shortcode country="it" pattern="\\d{5}" premium="44[0-4]\\d{2}|47[0-4]\\d{2}|48[0-4]\\d{2}|44[5-9]\\d{4}|47[5-9]\\d{4}|48[5-9]\\d{4}|455\\d{2}|499\\d{2}" free="116\\d{3}|4112503|40\\d{0,12}" standard="430\\d{2}|431\\d{2}|434\\d{4}|435\\d{4}|439\\d{7}" />
160
161    <!-- Japan: 8083 used by SOFTBANK_DCB_2 -->
162    <shortcode country="jp" pattern="\\d{1,5}" free="8083" />
163
164    <!-- Kenya: 5 digits, known premium codes listed -->
165    <shortcode country="ke" pattern="\\d{5}" free="21725|21562|40520" />
166
167    <!-- Kyrgyzstan: 4 digits, known premium codes listed -->
168    <shortcode country="kg" pattern="\\d{4}" premium="415[2367]|444[69]" />
169
170    <!-- Korea: http://www.smsideatechnosolutions.com/chhattisgarh/korea/sms-short-code.html -->
171    <shortcode country="kr" pattern="\\d{4,7}" free="\\*9712|\\*9090|##900" />
172
173    <!-- Kazakhstan: 4 digits, known premium codes listed: http://smscoin.net/info/pricing-kazakhstan/ -->
174    <shortcode country="kz" pattern="\\d{4}" premium="335[02]|4161|444[469]|77[2359]0|8444|919[3-5]|968[2-5]" />
175
176    <!-- Kuwait: 1-5 digits (standard system default, not country specific) -->
177    <shortcode country="kw" pattern="\\d{1,5}" free="1378|50420|94006|55991" />
178
179    <!-- Lithuania: 3-5 digits, known premium codes listed, plus EU -->
180    <shortcode country="lt" pattern="\\d{3,5}" premium="13[89]1|1394|16[34]5" free="116\\d{3}|1399|1324" />
181
182    <!-- Luxembourg: 5 digits, 6xxxx, plus EU:
183         http://www.luxgsm.lu/assets/files/filepage/file_1253803400.pdf -->
184    <shortcode country="lu" premium="6\\d{4}" free="116\\d{3}|60231|64085" />
185
186    <!-- Latvia: 4 digits, known premium codes listed, plus EU -->
187    <shortcode country="lv" pattern="\\d{4}" premium="18(?:19|63|7[1-4])" free="116\\d{3}|1399" />
188
189    <!-- Macedonia: 1-6 digits (not confirmed), known premium codes listed -->
190    <shortcode country="mk" pattern="\\d{1,6}" free="129005|122" />
191
192    <!-- Mexico: 4-5 digits (not confirmed), known premium codes listed -->
193    <shortcode country="mx" pattern="\\d{4,5}" premium="53035|7766" free="26259|46645|50025|50052|5050|76551|88778|9963|91101" />
194
195    <!-- Malaysia: 5 digits: http://www.skmm.gov.my/attachment/Consumer_Regulation/Mobile_Content_Services_FAQs.pdf -->
196    <shortcode country="my" pattern="\\d{5}" premium="32298|33776" free="22099|28288|66668" />
197
198    <!-- The Netherlands, 4 digits, known premium codes listed, plus EU -->
199    <shortcode country="nl" pattern="\\d{4}" premium="4466|5040" free="116\\d{3}|2223|6225|2223|1662" />
200
201    <!-- Nigeria -->
202    <shortcode country="ng" pattern="\\d{1,5}" free="2441|55020" />
203
204    <!-- Norway: 4-5 digits (not confirmed), known premium codes listed -->
205    <shortcode country="no" pattern="\\d{4,5}" premium="2201|222[67]" free="2171" />
206
207    <!-- New Zealand: 3-4 digits, known premium codes listed -->
208    <shortcode country="nz" pattern="\\d{3,4}" premium="3903|8995|4679" free="1737|176|2141|3067|3068|3110|4006|4053|4061|4062|4202|4300|4334|4412|4575|5626|8006|8681" />
209
210    <!-- Peru: 4-5 digits (not confirmed), known premium codes listed -->
211    <shortcode country="pe" pattern="\\d{4,5}" free="9963|40777" />
212
213    <!-- Philippines -->
214    <shortcode country="ph" pattern="\\d{1,5}" free="2147|5495|5496" />
215
216    <!-- Pakistan -->
217    <shortcode country="pk" pattern="\\d{1,5}" free="2057" />
218
219    <!-- Poland: 4-5 digits (not confirmed), known premium codes listed, plus EU -->
220    <shortcode country="pl" pattern="\\d{4,5}" premium="74240|79(?:10|866)|92525" free="116\\d{3}|8012|80921" />
221
222    <!-- Portugal: 5 digits, plus EU:
223         http://clients.txtnation.com/entries/158326-portugal-premium-sms-short-code-regulations -->
224    <shortcode country="pt" premium="6[1289]\\d{3}" free="116\\d{3}|1262|12666" />
225
226    <!-- Qatar: 1-5 digits (standard system default, not country specific) -->
227    <shortcode country="qa" pattern="\\d{1,5}" free="92451" />
228
229    <!-- Reunion (French Territory): 1-5 digits (not confirmed) -->
230    <shortcode country="re" pattern="\\d{1,5}" free="38600,36300,36303,959" />
231
232    <!-- Romania: 4 digits, plus EU: http://www.simplus.ro/en/resources/glossary-of-terms/ -->
233    <shortcode country="ro" pattern="\\d{4}" premium="12(?:63|66|88)|13(?:14|80)" free="116\\d{3}|3654|8360|3838" />
234
235    <!-- Russia: 4 digits, known premium codes listed: http://smscoin.net/info/pricing-russia/ -->
236    <shortcode country="ru" pattern="\\d{4}" premium="1(?:1[56]1|899)|2(?:09[57]|322|47[46]|880|990)|3[589]33|4161|44(?:4[3-9]|81)|77(?:33|81)|8424" free="6954|8501" standard="2037|2044"/>
237
238    <!-- Saudi Arabia -->
239    <shortcode country="sa" pattern="\\d{1,5}" free="8145" />
240
241    <!-- Sweden: 5 digits (72xxx), plus EU: http://www.viatel.se/en/premium-sms/ -->
242    <shortcode country="se" premium="72\\d{3}" free="116\\d{3}" />
243
244    <!-- Singapore: 5 digits: http://clients.txtnation.com/entries/306442-singapore-premium-sms-short-code-requirements
245         Free government directory info at 74688: http://app.sgdi.gov.sg/sms_help.asp -->
246    <shortcode country="sg" pattern="7\\d{4}" premium="73800" standard="74688|70134" />
247
248    <!-- Slovenia: 4 digits (premium=3xxx, 6xxx, 8xxx), plus EU: http://www.cmtelecom.com/premium-sms/slovenia -->
249    <shortcode country="si" pattern="\\d{4}" premium="[368]\\d{3}" free="116\\d{3}|3133" />
250
251    <!-- Slovakia: 4 digits (premium), plus EU: http://www.cmtelecom.com/premium-sms/slovakia -->
252    <shortcode country="sk" premium="\\d{4}" free="116\\d{3}|8000" />
253
254    <!-- Taiwan -->
255    <shortcode country="tw" pattern="\\d{4}" free="1922" />
256
257    <!-- Thailand: 4186001 used by AIS_TH_DCB -->
258    <shortcode country="th" pattern="\\d{1,5}" premium="4\\d{6}" free="4186001" />
259
260    <!-- Tajikistan: 4 digits, known premium codes listed -->
261    <shortcode country="tj" pattern="\\d{4}" premium="11[3-7]1|4161|4333|444[689]" />
262
263    <!-- Turkey -->
264    <shortcode country="tr" pattern="\\d{1,5}" free="7529|5528|6493|3193" />
265
266    <!-- Ukraine: 4 digits, known premium codes listed -->
267    <shortcode country="ua" pattern="\\d{4}" premium="444[3-9]|70[579]4|7540" />
268
269    <!-- USA: 5-6 digits (premium codes from https://www.premiumsmsrefunds.com/ShortCodes.htm),
270         visual voicemail code for T-Mobile: 122 -->
271    <shortcode country="us" pattern="\\d{5,6}" premium="20433|21(?:344|472)|22715|23(?:333|847)|24(?:15|28)0|25209|27(?:449|606|663)|28498|305(?:00|83)|32(?:340|941)|33(?:166|786|849)|34746|35(?:182|564)|37975|38(?:135|146|254)|41(?:366|463)|42335|43(?:355|500)|44(?:578|711|811)|45814|46(?:157|173|327)|46666|47553|48(?:221|277|669)|50(?:844|920)|51(?:062|368)|52944|54(?:723|892)|55928|56483|57370|59(?:182|187|252|342)|60339|61(?:266|982)|62478|64(?:219|898)|65(?:108|500)|69(?:208|388)|70877|71851|72(?:078|087|465)|73(?:288|588|882|909|997)|74(?:034|332|815)|76426|79213|81946|83177|84(?:103|685)|85797|86(?:234|236|666)|89616|90(?:715|842|938)|91(?:362|958)|94719|95297|96(?:040|666|835|969)|97(?:142|294|688)|99(?:689|796|807)" standard="44567|244444" free="122|87902|21696|24614|28003|30356|33669|40196|41064|41270|43753|44034|46645|52413|56139|57969|61785|66975|75136|76227|81398|83952|85140|86566|86799|95737|96684|99245|611611" />
272
273    <!-- Vietnam: 1-5 digits (standard system default, not country specific) -->
274    <shortcode country="vn" pattern="\\d{1,5}" free="5001|9055" />
275
276    <!-- Mayotte (French Territory): 1-5 digits (not confirmed) -->
277    <shortcode country="yt" pattern="\\d{1,5}" free="38600,36300,36303,959" />
278
279    <!-- South Africa -->
280    <shortcode country="za" pattern="\\d{1,5}" free="44136|30791|36056" />
281
282</shortcodes>
283