El primer recorrido de prueba del monorriel, desde Patio y Talleres hasta Ciudad del Futuro, se registró la tarde del lunes 13 de abril, con esta prueba...
Bancos advierten alzas de las hipotecas por impuesto del 2% en casas nuevas
- 14/04/2026 12:44
La reciente implementación del cobro del 2% del Impuesto de Transferencia de Bienes Inmuebles (ITBI) sobre las viviendas nuevas ha generado un clima de incertidumbre en el sector económico panameño.
Ernesto Boyd Jr., presidente de la Asociación Bancaria de Panamá (ABP), expresó su preocupación por el impacto directo que esta medida tiene sobre el costo del crédito y la capacidad de los ciudadanos para adquirir su primera vivienda.
Para Boyd Jr., la realidad es innegable: impuestos adicionales como este 2% elevan los costos de los créditos, dificultando el acceso al financiamiento.
“Lo que escuchamos es que el cobro del 2% va a tener alguna afectación”, señaló el líder gremial, subrayando que, aunque la banca no participa directamente en la discusión política del impuesto, su rol es fundamental para apoyar la necesidad de financiamiento de quienes buscan un hogar.
Las alarmas de la industria inmobiliaria no son menores. El Consejo Nacional de Vivienda (Convivienda) ha reportado cifras alarmantes: una caída del 34.38% en la venta de unidades durante el último año, sumado a una desaceleración acumulada del 55% en el sector entre 2024 y 2025.
Elisa Suárez, directora ejecutiva del gremio, ha advertido que este impuesto —que estuvo exonerado por más de 50 años para viviendas nuevas— llega en un momento crítico donde el déficit habitacional en el país ronda las 180,000 unidades.
Según cálculos de Convivienda, aunque el Estado espera recaudar unos $37 millones con esta medida, el impacto colateral podría causar una pérdida de $13.5 millones en otros conceptos como ITBMS e Impuesto sobre la Renta, debido a la paralización de proyectos y la menor colocación de unidades.
Ante el descontento de los gremios, el ministro de Economía y Finanzas, Felipe Chapman, ha salido al paso para aclarar que no se trata de la creación de un nuevo tributo.
“Lo que venció fue una exención al impuesto; el impuesto ya ha existido”, puntualizó el titular del MEF.
Chapman explicó que la Ley 468 de 2025 eliminó este beneficio como parte de un equilibrio fiscal necesario frente al aumento de los subsidios en las tasas de interés preferencial.
No obstante, tras las reacciones del sector privado, el ministro mostró una ventana de apertura. Boyd Jr. destacó positivamente que Chapman ha manifestado su disposición para evaluar el cobro una vez se concluya el traspaso de compraventa con el cliente.
“Creo que hay la disposición de que exista la posibilidad de que eso se revise”, afirmó el presidente de la ABP.
Invocation of method 'substring' in class java.lang.String threw exception java.lang.StringIndexOutOfBoundsException: String index out of range: -13 at 199527016/F/D_TXT[line 236, column 72]
1#set($cropName = "crop_big")
2#set($widthMultimedia = "100%")
3#set($heightMultimedia = "auto")
4#set($cropSizes = "100%")
5
6#set ($arrayListContents = [])
7#AddListContents($arrayListContents "Text" "paragraph" "text paragraph" "div" "")
8#AddListContents($arrayListContents "HTML_Text" "html" "html_text" "div", "")
9#AddListContents($arrayListContents "Image_Text" "image" "Image_Text" "div" "crop_big")
10#AddListContents($arrayListContents "Image_Text_Vertical" "image" "Image_Text" "div" "crop_vertical")
11#AddListContents($arrayListContents "Quote" "text" "quote" "blockquote" "")
12#AddListContents($arrayListContents "Youtube_Text" "youtube" "Youtube_Text" "div" "")
13#AddListContents($arrayListContents "Vimeo_Text" "Vimeo_Text" "Vimeo_Text" "div" "")
14#AddListContents($arrayListContents "Twitter_Text" "twitter" "art-twitter Twitter_Text" "div" "")
15#AddListContents($arrayListContents "Facebook_Text" "facebook" "Facebook_Text" "div" "")
16#AddListContents($arrayListContents "Multimedia_Text" "multimedia" "Multimedia_Text" "div" "")
17#AddListContents($arrayListContents "Intext" "text" "intext" "div" "")
18#AddListContents($arrayListContents "Intertitle" "text" "intertitle" "div" "")
19#AddListContents($arrayListContents "Bullet_Points_Text" "text" "bullet_points_text" "div" "")
20#AddListContents($arrayListContents "Destacado" "text" "Destacado" "div" "")
21#AddListContents($arrayListContents "Article_Text" "article_text" "article_text" "div" "L1QvSU1HX1RJVA==")
22#AddListContents($arrayListContents "Coach_Legal_Text" "text" "coach_legal_text" "div" "")
23#AddListContents($arrayListContents "Jwplayer_Text" "jwplayer_text" "jwplayer_text" "div" "")
24#AddListContents($arrayListContents "Infographic" "image" "Infographic" "div" "crop_vertical")
25#AddListContents($arrayListContents "Spotify_Text" "spotify" "spotify_text" "div" "")
26#AddListContents($arrayListContents "Tiktok_Text" "tiktok" "tiktok_text" "div" "")
27#AddListContents($arrayListContents "HTML_Table" "html" "html_table" "div", "")
28#AddListContents($arrayListContents "Piece" "piece" "piece" "div", "")
29#AddListContents($arrayListContents "Phrase" "phrase" "phrase" "div", "")
30#AddListContents($arrayListContents "Question" "poll" "iter-survey" "div", "")
31#AddListContents($arrayListContents "Cutline_Content" "text" "cutline_Content" "div", "")
32
33#set ($adInParagraph ={})
34#set ($temp = $adInParagraph.put("1","AdOps NOTE box1_ad"))
35#set ($temp = $adInParagraph.put("5","AdOps NOTE intext1_ad"))
36
37<script async defer src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.2"></script>
38<div class="item_template D_TXT">
39
40 ##printHTMLContentArticle ($arrayListContents $cropName $cropSizes $widthMultimedia $heightMultimedia $adInParagraph)
41 ##macro(printHTMLContentArticle $arrayListContents $cropName $cropSizes $widthMultimedia $heightMultimedia $adInParagraph)
42 #set($count = 0)#*
43 *##set($childrenTags = $articleToolbox.getChildrenTags(null))#*
44 *##set($currentElement = 0)#*
45 *##set($contadorParrafos = 1)#*
46 *##set($slide_imgTxt = false)#*
47 *##foreach($el in $childrenTags)#* ## RECORREMOS LOS CONTENIDOS DEL ARTICULO
48 *##foreach($cont in $arrayListContents) #* ## BUSCAMOS EL CONTENIDO ($el) EN LOS CONTENIDOS A MOSTRAR ($arrayListContents)
49 *##if($cont.name.toUpperCase() == $el.name.toUpperCase())#* ## ENCONTRAMOS EL CONTENIDO EN EL LA LISTA DE CONTENIDOS A MOSTRAR
50 *##if($cont.type == "image")#* ## PINTA UNA IMAGEN Y SI HAY MAS DEL MISMO TIPO SEGUIDAS LAS AGRUPA EN UN BXSLIDER
51 ## vemos si hay mas image_text detras +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
52 *##set($ind = $currentElement+1)#*
53 *##if($childrenTags.get($ind).name.toUpperCase() == $el.name.toUpperCase() && $slide_imgTxt == false)#*
54 *##set($name_s = "bx_slider_it_" + $currentElement)#*
55 *#<div class="$name_s bxSlider_content">#*
56 *##set($slide_imgTxt = true)#*
57 *##end#*
58 ## +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
59 *#<$cont.tag class="contentMedia art-img ${cont.cssclass} p_$currentElement ">#*
60 *##set($tempImage = $articleToolbox.getImageNode($el.name, $el.Milenium.data, "true"))#*
61 *##set($AltImage = "#getAltImage($tempImage)")#*
62 *##set($TitleImage = "#getTitleImage($tempImage)")#*
63 *##if($cont.crop != "")#*
64 *##set($cropNameImg = $cont.crop)#*
65 *##else#*
66 *##set($cropNameImg = $cropName)#*
67 *##end#*
68 *#$!articleToolbox.getImageTag2("$el.name","$el.Milenium.data","$cropNameImg","","","","false","$!AltImage","$!TitleImage","$!cropSizes")#*
69 *#<div class="cutline-byline">#*
70 *##if($el.Cutline && $el.Cutline.data != "")#*
71 *#<span class="cutline-text" mlnid="$el.Cutline.Milenium.data">$!el.Cutline.data</span>#*
72 *##end#*
73 *##if($el.Byline && $el.Byline.data != "")#*
74 *#<span class="byline-image" mlnid="$el.Byline.Milenium.data">$el.Byline.data</span>#*
75 *##end#*
76 *#</div>#*
77 *#</$cont.tag>#*
78
79 ## VERIFICAR SI ES EL ULTIMO ELEMENTO DE LOS CONTENIDOS TEST??????????????????????????????????
80 ## +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
81 *##if($childrenTags.get($ind).name.toUpperCase() == $el.name.toUpperCase() && $slide_imgTxt || $childrenTags.size() <= $currentElement)#*
82 *#</div>#*
83 *##set($slide_imgTxt = false)#*
84 *##end#*
85 ## +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
86 *##end#*
87
88 *##if($cont.type == "youtube")#* ## CONTENIDOS DE TIPO VIDEO YOUTUBE
89 *##if($el && $el.trim() != "")#*
90 *#<$cont.tag class="multimediaMacroWrapper ${cont.cssclass}" itemprop="video" iterhtmlid="$el.Milenium.data">#*
91 *#<iframe title="YouTube video player" allow="autoplay" allowfullscreen="" frameborder="0" height="$heightMultimedia" width="$widthMultimedia" src="//www.youtube.com/embed/$el.data?autoplay=1&mute=1&wmode=transparent&controls=2&showinfo=0&theme=light"></iframe>#*
92 *#</$cont.tag>#*
93 *##end#*
94 *##end#*
95
96 *##if($cont.type == "spotify")#* ## CONTENIDOS DE TIPO SPOTIFY
97 *##if($el && $el.trim() != "")#*
98 *#<$cont.tag class="multimediaMacroWrapper ${cont.cssclass}" iterhtmlid="$el.Milenium.data">#*
99 *#<iframe src="https://open.spotify.com/embed/episode/$el.data?utm_source=generator" width="100%" height="352" frameborder="0" allowfullscreen="" allow="autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture" loading="lazy"></iframe>#*
100 *#</$cont.tag>#*
101 *##end#*
102 *##end#*
103
104 *##if($cont.type == "vimeo")#* ## CONTENIDOS DE TIPO VIDEO VIMEO
105 *##if($el && $el.trim() != "")#*
106 *#<$cont.tag class="multimediaMacroWrapper ${cont.cssclass}" itemprop="video" iterhtmlid="$el.Milenium.data">#*
107 *#<iframe class="vimeo-player" src="//player.vimeo.com/video/$el.data" width="$widthMultimedia" height="$heightMultimedia" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>#*
108 *#</$cont.tag>#*
109 *##end#*
110 *##end#*
111
112 *##if($cont.type == "twitter")#* ## CONTENIDOS DE TIPO TWITTER
113 *##if($el && $el.trim() != "")#*
114 *#<$cont.tag class="art-twitter ${cont.cssclass}" iterhtmlid="$el.Milenium.data">#*
115 *#<div class="twitter-content" itemprop="tweet">#*
116 *#<blockquote class="twitter-tweet">#*
117 *#<a href='$!el.data'></a>#*
118 *#</blockquote>#*
119 *#</div>#*
120 *#</$cont.tag>#*
121 *#$!iterVelocityTools.includeLibrary("https://platform.twitter.com/widgets.js", "ITER.RESOURCE.CUSTOM.TwitterLoaded.resolve()")#*
122 *##end#*
123 *##end#*
124
125 *##if($cont.type == "facebook")#* ## CONTENIDOS DE TIPO FACEBOOK
126 *##if($el && $el.trim() != "")#*
127 *#<$cont.tag class="art-facebook ${cont.cssclass}" iterhtmlid="$el.Milenium.data">#*
128 *#<div class="facebook-content" itemprop="facebook_post">#*
129 *#<div class="fb-post" data-href="$!el.data.trim()"></div>#*
130 *#</div>#*
131 *#</$cont.tag>#*
132 *##end#*
133 *##end#*
134
135 *##if($cont.type == "multimedia")#* ## CONTENIDOS MULTIMEDIA
136 *##if($el && $el.trim() != "")#*
137 *#<$cont.tag class="multimediaMacroWrapper ${cont.cssclass}" iterhtmlid="$el.Milenium.data">#*
138 *##if($el.Extension.data && $el.Extension.data == "mp3")#*
139 *#<audio controls width="$widthMultimedia" height="$heightMultimedia">#*
140 *#<source src="$el.Document.data" type="audio/mpeg">#*
141 *#</audio>#*
142 *##elseif ($el.Extension.data && $el.Extension.data == "mp4")#*
143 *#<video id="multimediaPlayer$!{reserved-article-id.data}${velocityCount}" poster="$!el.Preview.data" controls width="$!widthMultimedia" height="$!heightMultimedia">#*
144 *#<source src="$!el.Document.data" type="video/mp4">#*
145 *#Tu navegador no soporta el vÃdeo de HTML5#*
146 *#</video>#*
147 *##end#*
148 *#</$cont.tag>#*
149 *##end#*
150 *##end#*
151
152 *##if($cont.type == "jwplayer_text")#* ## CONTENIDOS JWPLAYER
153 *##if($el && $el.trim() != "")#*
154 *##set($pos = $el.data.indexOf("-"))#*
155 *##if($pos > -1)#*
156 *##set($idjw = $el.data)#*
157 *##else#*
158 *##set($idjw = $el.data + "-MeM4jbo2")#*
159 *##end#*
160 *#<$cont.tag class="multimediaMacroWrapper ${cont.cssclass}" itemprop="video" iterhtmlid="$el.Milenium.data">#*
161 *#<script src="https://cdn.jwplayer.com/players/${idjw}.js"></script>#*
162 *#</$cont.tag>#*
163 *##end#*
164 *##end#*
165
166 *##if($cont.type == "paragraph")#* ## CONTENIDOS DE TIPO TEXTO CON PARRAFOS
167 *##if($el && $el.trim() != "")#*
168 *#<$cont.tag class='paragraph ${cont.cssclass} p_$currentElement' mlnid="$el.Milenium.data">#*
169 *##set($tempArrayText = $el.data.trim().replaceAll("&","&").split("</p>"))#*
170 *##foreach($parrafo in $tempArrayText)#*
171 *##set($parrafo = $parrafo.replaceAll("<p>", "").replaceAll("</p>", "").trim())#*
172 *##if($parrafo != "")#*
173 *#<p class="p_$contadorParrafos">$!parrafo</p>#*
174 *##set($n_parrafo = "$contadorParrafos")#*
175 *##set ($item_pub = $adInParagraph.get($n_parrafo))#*
176 *##if($item_pub)#*
177 *#<div class="ads">#*
178 *#$!iterVelocityTools.getAdContainer($item_pub)#*
179 *#</div>#*
180 *##end#*
181 *##set($contadorParrafos = $contadorParrafos + 1)#*
182 *##end#*
183 *##end#*
184 *#</$cont.tag>#*
185 *##end#*
186 *##end#*
187
188 *##if($cont.type == "text_parent")#* ## CONTENIDOS DE TEXTO CON HIJOS
189 *##set($hasChildren = $articleToolbox.getChildrenTags($el))#*
190 *##if($el.data && $el.data.trim() != "")#*
191 *#<$cont.tag class='${cont.cssclass}'>$!el.data.trim().replaceAll("&","&")</$cont.tag>#*
192 *##if($hasChildren && $hasChildren.size() > 0)#*
193 *##foreach ($parent in $articleToolbox.getChildrenTags($el))#*
194 *##if ($parent.name != "Milenium")#*
195 *#<div class="item_child">#*
196 *#$parent.data#*
197 *#</div>#*
198 *##end#*
199 *##end#*
200 *##end#*
201 *##end#*
202 *##end#*
203
204 *##if($cont.type == "text")#* ## CONTENIDOS DE TEXTO
205 *##if($el.data && $el.data.trim() != "")#*
206 *#<$cont.tag class='${cont.cssclass}'>$!el.data.trim().replaceAll("&","&")</$cont.tag>#*
207 *##end#*
208 *##end#*
209
210 *##if($cont.type == "html")#* ## CONTENIDOS DE TIPO HTML
211 *##if($el.data && $el.data.trim() != "")#*
212 *#<$cont.tag class='${cont.cssclass}'>$!el.data</$cont.tag>#*
213 *##end #*
214 *##end#*
215
216 *##if($cont.type == "article_text")#*
217 *##if($el && $el.data.trim() != "")#*
218 *##set($poscon = $el.Milenium.data.indexOf(";"))#*
219 *##set($idcon = $el.Milenium.data.substring(6,$poscon))#*
220 *##set($urlid = $!el.data.trim())#*
221 *##set($lar = $urlid.length())#*
222 *##set($lar = $lar - 1)#*
223 *##set($i = 0)#*
224 *##set($ini = 0)#*
225 *##set($fin = 0)#*
226 *##foreach($i in [0..$lar])#*
227 *##set($ii = $i + 1)#*
228 *##set($c = $urlid.substring($i,$ii))#*
229 *##set($n = $mathTool.toInteger($c))#*
230 *##if($validator.isNumber($c))#*
231 *##set($fin = $i + 1)#*
232 *##else#*
233 *##set($ini = $i + 1)#*
234 *##end#*
235 *##end#*
236 *##set($urlid = $urlid.substring($ini,$fin))#*
237
238 *##set($articletext = $!el.data.trim())#*
239 *##foreach ($element in $$articletext.split("-"))#*
240 *##set($urlid = $element)#*
241 *##end#*
242 *##set($urlid = $urlid.substring(2))#*
243
244 *#<$cont.tag class='${cont.cssclass} $urlid $idcon' mlnid="$el.Milenium.data" arturl="$!art_url">#*
245 $iterVelocityTools.includeLibrary("embed-article")
246 $iterVelocityTools.embedArticle("$urlid","/T/IMG_TIT", "MyClassName", "TeaserHeadline")
247 *#<script>
248 jQuery.get("/news-portlet/renderArticle/$urlid/${cont.crop}", function(data, status) {
249 jQuery(".${cont.cssclass}.$urlid.$idcon").append(data);
250 });
251 </script>#*
252 *#</$cont.tag>#*
253 *##end#*
254 *##end#*
255
256 *##if($cont.type == "tiktok")#*
257 *##if($el && $el.data.trim() != "")#*
258 *#<$cont.tag class="art-tiktiok ${cont.cssclass}" iterhtmlid="$el.Milenium.data">#*
259 *##foreach ($element in $el.data.split("/"))#*
260 *##set($idv = $element)#*
261 *##end#*
262 *#<iframe name="" src="https://www.tiktok.com/embed/v2/$idv?lang=es-ES" style="width: 100%; height: 739px; display: block; visibility: unset; max-height: 739px;"></iframe>#*
263 *#</$cont.tag>#*
264 *##end#*
265 *##end#*
266
267 *##if($cont.type == "piece")#*
268 *##if($el && $el.data.trim() != "")#*
269 *#<$cont.tag class='${cont.cssclass}'>#*
270 *#<div class="title">$el.data</div>#*
271 *#<div class="description">$!el.Piece_Title.data</div>#*
272 *#<div class="num">$!el.Piece_Description.data</div>#*
273 *#<div class="text">$!el.Piece_Text.data</div>#*
274 *#</div>#*
275 *##end#*
276 *##end#*
277
278 *##if($cont.type == "phrase")#*
279 *##if($el && $el.data.trim() != "")#*
280 ##TIENE IMAGEN
281 *##set($hasImage = "noimage")#*
282 *##set($numImage = 0)#*
283 *##set($numImageText = 0)#*
284 *##if($el.Image && $el.Image.getSiblings().size() > 0)#*
285 *##set($numImage = $el.Image.getSiblings().size())#*
286 *##set($hasImage = "image")#*
287 *##end#*
288 *##if($el.Image_Text && $el.Image_Text.getSiblings().size() > 0)#*
289 *##set($numImageText = $el.Image_Text.getSiblings().size())#*
290 *##set($hasImage = "image")#*
291 *##end#*
292 *#<$cont.tag class='${cont.cssclass} $!hasImage'>#*
293 *##if($numImage > 0)#*
294 *#<div class="block-0">#*
295 *#$!articleToolbox.getImageTag("Image",$el.Image_Text.Milenium.data,"crop_small","","","","","","","")#*
296 *#</div>#*
297 *##end#*
298 *##if($numImageText > 0)#*
299 *#<div class="block-0">#*
300 *#$!articleToolbox.getImageTag("Image_Text",$el.Image_Text.Milenium.data,"crop_small","","","","","","","")#*
301 *#</div>#*
302 *##end#*
303 *#<div class="block-1">#*
304 *#<div class="icon"></div>#*
305 *#<div class="name">$!el.Phrase_Name.data</div>#*
306 *#<div class="profession">$!el.Phrase_Profession.data</div>#*
307 *#</div>#*
308 *#<div class="block-2">#*
309 *#$!el.data#*
310 *#</div>#*
311 *#</div>#*
312 *##end#*
313 *##end#*
314
315 *##if($cont.type == "poll")#* ## CONTENIDOS DE TIPO ENCUESTA
316 *##if($el && $el.trim() != "")#*
317 *##set($namespace = $randomNamespace)#*
318 #initPoll
319 *#<div class='${element.cssclass}' $!tempIter groupId="$groupId" questionId="$Question.questionid" data-opendate="$!Question.opendate" data-closedate="$!Question.closedate">#*
320 *#<div class="question-poll">#*
321 ##QUESTION
322 *#<h3 class="headline question">$!Question.data</h2>#*
323 *#</div> <!-- Fin div question-poll -->#*
324 ##CHOICES
325 *#<div class="${namespace}_choices choices visible">#*
326 *##if ($Question && $Question.Answer && $Question.Answer.getSiblings() && $Question.Answer.getSiblings().size() > 0)#*
327 *#<form id="${namespace}_form" name="${namespace}_form" class="${namespace}_form form" >#*
328 *#<input name="questionId" type="hidden" value="$Question.questionid" />#*
329 *##foreach ($answer in $Question.Answer.getSiblings())#*
330 *#<span class="choice" data-choiceid="${answer.choiceid}"><input type="radio" value="$answer.choiceid" name="choiceId" class="choiceOption">$answer.data</span>#*
331 *##end #*
332 *#</form>#*
333 *##end#*
334 *#</div> <!-- Fin div choices -->#*
335 *#<div class="buttons-poll">#*
336 *#<span class="vote-btn visible">Votar</span>#*
337 *#<span class="result-btn hidden">Resultados</span>#*
338 *#</div> <!-- Fin div buttons -->#*
339 *#<div class="${namespace}_results results hidden"></div>#*
340 *#</div>#*
341 *##end#*
342 *##end#*
343
344 *##set($name_prev = $el.name.toUpperCase())#*
345 *##break#* ## SALIMOS ENCONTRADO EN LISTA DE CONTENIDOS A MOSTRAR
346 *##end#*
347 *##end#*
348 *##set($currentElement = $currentElement+1)#*
349 *##end
350
351 ##ADJUNTOS
352 #set($Generic_ = $articleToolbox.getTag(null,'Generic'))
353 #if($Generic_)
354 <div class="generic">
355 <div class="title">Adjuntos</div>
356 #foreach($item in $Generic_.getSiblings())
357 #set($name = $item.data)
358 #if($item.Cutline_Content && $item.Cutline_Content.data != "")
359 #set($name = $item.Cutline_Content.data)
360 #end
361 <div class="block-generic">
362 <a href="$item.Document.data" target="_blank"><div class="file">$name</div></a>
363 </div>
364 #end
365 </div>
366 #end
367
368</div>