{"id":32179,"date":"2026-09-03T10:49:13","date_gmt":"2026-09-03T10:49:13","guid":{"rendered":"https:\/\/etecnic.es\/?page_id=32179"},"modified":"2026-09-07T10:08:37","modified_gmt":"2026-09-07T10:08:37","slug":"verifactu-facturacio-punts-de-recarrega","status":"publish","type":"page","link":"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/","title":{"rendered":"Verifactu Landing &#8211; Cat"},"content":{"rendered":"<div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:1331.2px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><!-- ============================================================\n     Landing VeriFactu \u2014 para pegar en un Code Block de Avada.\n     Todo el CSS est\u00e1 limitado a #verifactu-landing: no puede afectar\n     al resto de la p\u00e1gina ni al tema.\n     ============================================================ -->\n<link rel=\"stylesheet\" href=\"https:\/\/fonts.googleapis.com\/css2?family=Kanit:wght@500;600;700&family=Poppins:wght@300;400;600&display=swap\">\n<style>\n\/* ----------------------------------------------------------------\n   Avada encajona el bloque dentro de su contenedor y le impone alto.\n   Esto lo libera sin depender de ninguna clase CSS ni del campo de\n   Custom CSS del tema, que a veces tarda en refrescar la cache.\n   ---------------------------------------------------------------- *\/\n.fusion-fullwidth:has(#verifactu-landing),\n.fusion-builder-row:has(#verifactu-landing),\n.fusion-row:has(#verifactu-landing),\n.fusion-layout-column:has(#verifactu-landing),\n.fusion-column-wrapper:has(#verifactu-landing),\n.fusion-builder-row-container-inner:has(#verifactu-landing),\n.fusion-post-content:has(#verifactu-landing),\n.post-content:has(#verifactu-landing),\n.verifactu-full,\n.verifactu-full .fusion-row,\n.verifactu-full .fusion-column-wrapper{\n  height:auto !important;\n  min-height:0 !important;\n  max-height:none !important;\n  overflow:visible !important;\n  max-width:100% !important;\n  width:100% !important;\n  margin-left:0 !important;\n  margin-right:0 !important;\n  padding-left:0 !important;\n  padding-right:0 !important;\n  flex:0 0 auto !important;\n  align-items:flex-start !important;\n}\n#verifactu-landing{\n  width:100vw !important;\n  max-width:100vw !important;\n  margin-left:calc(50% - 50vw) !important;\n  margin-right:calc(50% - 50vw) !important;\n}\nbody:has(#verifactu-landing){overflow-x:hidden !important;}\n\n\/* El tema deja su propio relleno arriba y abajo del contenido, y eso abre una\n   franja blanca entre la cabecera y el degradado. Fuera solo en esta pagina. *\/\n#main:has(#verifactu-landing),\n.fusion-main:has(#verifactu-landing),\n#content:has(#verifactu-landing),\n.fusion-fullwidth:has(#verifactu-landing),\n.fusion-builder-row:has(#verifactu-landing),\n.fusion-builder-row-container-inner:has(#verifactu-landing),\n.fusion-row:has(#verifactu-landing),\n.fusion-layout-column:has(#verifactu-landing),\n.fusion-column-wrapper:has(#verifactu-landing),\n.fusion-post-content:has(#verifactu-landing),\n.post-content:has(#verifactu-landing),\n.verifactu-full,\n.verifactu-full .fusion-row{\n  padding-top:0 !important;\n  padding-bottom:0 !important;\n  margin-top:0 !important;\n  margin-bottom:0 !important;\n}\n\n#verifactu-landing{box-sizing:border-box;-webkit-text-size-adjust:100%;}\n#verifactu-landing *,#verifactu-landing *:before,#verifactu-landing *:after{box-sizing:border-box;}\n#verifactu-landing h1,#verifactu-landing h2,#verifactu-landing h3,#verifactu-landing h4,#verifactu-landing p,#verifactu-landing li,#verifactu-landing span,#verifactu-landing label,#verifactu-landing summary,#verifactu-landing button,#verifactu-landing input,#verifactu-landing select,#verifactu-landing textarea,#verifactu-landing b,#verifactu-landing strong,#verifactu-landing em,#verifactu-landing i,#verifactu-landing small,#verifactu-landing a{text-transform:none;letter-spacing:normal;font-variant:normal;text-shadow:none;}\n#verifactu-landing em{font-style:normal;}\n#verifactu-landing a{text-decoration:none;}\n#verifactu-landing a:hover{text-decoration:underline;}\n#verifactu-landing ul,#verifactu-landing ol{margin:0;padding:0;list-style:none;}\n#verifactu-landing img{max-width:100%;height:auto;display:block;}\n#verifactu-landing figure{margin:0;}\n#verifactu-landing button{font:inherit;margin:0;border:none;background:none;}\n#verifactu-landing input,#verifactu-landing select,#verifactu-landing textarea{font:inherit;margin:0;}\n#verifactu-landing details summary::marker{content:\"\";}\n#verifactu-landing details summary::-webkit-details-marker{display:none;}\n#verifactu-landing table{border-collapse:collapse;}\n\n#verifactu-landing{\n  --blanco:#ffffff;\n  --marino:#03176e;\n  --azul:#3c44ee;\n  --cian:#00e9ef;\n  --verde:#00d23b;\n  --amarillo:#f4e41e;\n  --celeste:#24a9f4;\n  --petroleo:#145e87;\n  --tinta:#000000;\n  --gris:#5b6079;\n  --linea:#dfe2ee;\n  --nieve:#f5f6fb;\n  --deg:linear-gradient(96deg,#3c44ee 0%,#24a9f4 32%,#00e9ef 62%,#00d23b 100%);\n  --deg-texto:linear-gradient(96deg,#3c44ee 0%,#1e7fd6 55%,#178ac7 100%);\n  --display:'Kanit','Trebuchet MS',sans-serif;\n  --texto:'Poppins','Helvetica Neue',Arial,sans-serif;\n}\n#verifactu-landing *{box-sizing:border-box;}\n#verifactu-landing [hidden]{display:none!important;}\n#verifactu-landing{margin:0;background:var(--blanco);color:var(--tinta)!important;\n  font-family:var(--texto)!important;font-weight:300;font-size:17px;line-height:1.7;\n  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}\n#verifactu-landing .envoltorio{max-width:1120px;margin:0 auto;padding:0 28px;}\n#verifactu-landing h1, #verifactu-landing h2, #verifactu-landing h3, #verifactu-landing h4{font-family:var(--display)!important;font-weight:600;color:var(--marino)!important;\n  margin:0;text-align:left;text-wrap:balance;line-height:1.12;}\n#verifactu-landing p{margin:0 0 1em 0;}\n#verifactu-landing .justificado{text-align:justify;hyphens:auto;}\n#verifactu-landing a{color:var(--azul);}\n#verifactu-landing :focus-visible{outline:3px solid var(--azul);outline-offset:3px;border-radius:4px;}\n#verifactu-landing .aviso{background:var(--marino);color:var(--blanco);font-size:14px;}\n#verifactu-landing .aviso .envoltorio{display:flex;gap:18px;align-items:flex-start;padding:16px 24px;}\n#verifactu-landing .aviso strong{font-family:var(--display);font-weight:600;}\n#verifactu-landing .aviso p{margin:0;}\n#verifactu-landing .aviso button{margin-left:auto;flex:none;background:none;border:1px solid rgba(255,255,255,.45);\n  color:var(--blanco);font-family:var(--texto);font-size:13px;padding:5px 12px;border-radius:40px;cursor:pointer;}\n#verifactu-landing .aviso button:hover{background:rgba(255,255,255,.12);}\n#verifactu-landing .portada{position:relative;width:100%;padding:58px 0 clamp(70px,7vw,130px);}\n#verifactu-landing .portada:before{content:'';position:absolute;top:0;\n  right:calc(50% - 50vw);\n  width:min(640px,52vw);height:min(420px,46vh);\n  pointer-events:none;z-index:0;\n  background:radial-gradient(115% 115% at 100% 0%,\n    rgba(60,68,238,.20) 0%,\n    rgba(36,169,244,.13) 26%,\n    rgba(0,233,239,.06) 48%,\n    rgba(255,255,255,0) 68%);}\n@media (max-width:860px){\n#verifactu-landing .portada:before{width:78vw;height:250px;}\n}\n#verifactu-landing .portada .envoltorio{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:0 28px;}\n#verifactu-landing .portada-rejilla{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr);\n  gap:44px;align-items:end;}\n#verifactu-landing .portada-imagen{margin:0;display:flex;justify-content:flex-end;align-items:flex-end;}\n#verifactu-landing .portada-imagen[hidden]{display:none!important;}\n@media (max-width:860px){\n#verifactu-landing .portada-rejilla{grid-template-columns:1fr;gap:30px;}\n#verifactu-landing .portada-imagen{justify-content:center;}\n}\n#verifactu-landing .arranque{margin-top:30px;}\n#verifactu-landing .boton-arranque{display:inline-flex;align-items:center;gap:10px;\n  font-family:var(--display);font-weight:600;font-size:17px;color:var(--blanco);\n  background:var(--marino);border-radius:40px;padding:16px 32px;text-decoration:none;\n  transition:background .2s,transform .18s,box-shadow .18s;min-height:54px;}\n#verifactu-landing .boton-arranque:hover{background:var(--azul);transform:translateY(-2px);\n  box-shadow:0 10px 26px rgba(60,68,238,.28);color:var(--blanco);text-decoration:none;}\n#verifactu-landing .boton-arranque span{transition:transform .3s;}\n#verifactu-landing .boton-arranque:hover span{transform:translateY(3px);}\n#verifactu-landing .condiciones{margin:12px 0 0;font-size:14px;color:var(--gris)!important;}\n#verifactu-landing .portada h1{font-size:clamp(31px,6vw,70px);font-weight:700!important;margin:0;max-width:15em;letter-spacing:-.015em;}\n#verifactu-landing .portada h1 em{font-style:normal;background:var(--deg-texto);-webkit-background-clip:text;background-clip:text;color:transparent!important;}\n#verifactu-landing .entradilla{font-size:clamp(17px,1.6vw,20px);color:var(--tinta)!important;max-width:33em;margin-top:20px;}\n#verifactu-landing .entradilla strong{color:var(--marino)!important;font-weight:600;}\n#verifactu-landing .entradilla-2{font-size:16px;color:var(--gris)!important;max-width:33em;margin-top:14px;}\n#verifactu-landing .fechas{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0;\n  margin-top:40px;border-top:1px solid var(--linea);}\n#verifactu-landing .fechas div{padding:20px 24px 20px 0;border-right:1px solid var(--linea);}\n#verifactu-landing .fechas div:last-child{border-right:none;padding-right:0;}\n#verifactu-landing .fechas b{display:block;font-family:var(--display)!important;font-weight:600;font-size:clamp(22px,2.2vw,26px);color:var(--marino)!important;}\n#verifactu-landing .fechas small{display:block;font-size:14px;color:var(--gris);line-height:1.5;margin-top:4px;}\n#verifactu-landing .seccion{padding:52px 0;}\n#verifactu-landing .rotulo{font-family:var(--display);font-weight:500;font-size:15px;color:var(--petroleo);margin-bottom:10px;}\n#verifactu-landing .seccion h2{font-size:clamp(28px,3.6vw,40px);}\n#verifactu-landing .seccion h2 + p{color:var(--gris);max-width:36em;margin-top:14px;}\n#verifactu-landing .arbol{margin-top:40px;}\n#verifactu-landing .arbol .via, #verifactu-landing .arbol .rastro, #verifactu-landing .arbol #pregunta{max-width:780px;}\n#verifactu-landing .desenlace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);\n  gap:26px;align-items:start;margin-top:34px;}\n#verifactu-landing .desenlace .columna-veredicto{position:sticky;top:24px;}\n#verifactu-landing .desenlace .resultado{margin-top:0;}\n#verifactu-landing .desenlace .formulario{padding:28px;}\n#verifactu-landing .desenlace .campos{gap:15px;}\n#verifactu-landing .desenlace .formulario h2{font-size:clamp(22px,2.2vw,28px);}\n#verifactu-landing .desenlace .formulario .justificado{font-size:15.5px;text-align:left;}\n#verifactu-landing .desenlace .recap{margin-top:18px;padding:14px 16px;}\n@media (max-width:940px){\n#verifactu-landing .desenlace{grid-template-columns:1fr;}\n#verifactu-landing .desenlace .columna-veredicto{position:static;}\n#verifactu-landing .desenlace .resultado{padding:24px;}\n#verifactu-landing .desenlace .resultado h3{font-size:21px;}\n#verifactu-landing .desenlace .resultado li{font-size:15px;}\n}\n#verifactu-landing .barra{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;\n  background:var(--marino);padding:12px 16px;box-shadow:0 -6px 24px rgba(3,23,110,.22);}\n#verifactu-landing .barra button{width:100%;font-family:var(--display);font-weight:600;font-size:16px;\n  color:var(--marino);background:var(--amarillo);border:none;border-radius:40px;padding:14px;cursor:pointer;}\n#verifactu-landing .barra[data-ver=\"si\"]{display:block;}\n@media (min-width:941px){\n#verifactu-landing .barra{display:none!important;}\n}\n#verifactu-landing .via{display:flex;align-items:center;gap:8px;margin-bottom:26px;}\n#verifactu-landing .via span{height:5px;flex:1 1 auto;border-radius:5px;background:var(--linea);transition:background .4s;}\n#verifactu-landing .via span.hecho{background:var(--deg);}\n#verifactu-landing .via span.aqui{background:var(--azul);}\n#verifactu-landing .via em{font-family:var(--display);font-weight:500;font-style:normal;font-size:14px;\n  color:var(--petroleo);flex:none;padding-left:6px;}\n#verifactu-landing .rastro{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}\n#verifactu-landing .rastro button{font-family:var(--texto);font-weight:400;font-size:13.5px;color:var(--marino);\n  background:var(--nieve);border:1px solid var(--linea);border-radius:40px;padding:6px 14px;\n  cursor:pointer;display:inline-flex;gap:7px;align-items:center;transition:all .2s;}\n#verifactu-landing .rastro button:hover{border-color:var(--azul);color:var(--azul);background:var(--blanco);}\n#verifactu-landing .rastro button b{font-weight:600;}\n#verifactu-landing .rastro button i{font-style:normal;color:var(--gris);font-size:12px;}\n#verifactu-landing .tarjeta{border:1px solid var(--linea);border-radius:20px;padding:36px 36px 30px;\n  background:var(--blanco);box-shadow:0 12px 44px rgba(3,23,110,.08);}\n#verifactu-landing .tarjeta.entra{animation:aparece .34s cubic-bezier(.2,.7,.3,1) both;}\n@keyframes aparece{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}\n#verifactu-landing .tarjeta h3{font-size:clamp(22px,2.6vw,28px);}\n#verifactu-landing .tarjeta .matiz{font-size:16px;color:var(--gris);margin:12px 0 0;max-width:44em;}\n#verifactu-landing .opciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}\n#verifactu-landing .opciones button{font-family:var(--texto);font-weight:400;font-size:16px;padding:15px 22px 15px 24px;\n  border-radius:14px;border:1.5px solid var(--linea);background:var(--blanco);color:var(--marino);\n  cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s;text-align:left;\n  display:inline-flex;align-items:center;gap:14px;min-height:54px;}\n#verifactu-landing .opciones button:after{content:'\u2192';color:var(--azul);opacity:.35;transition:opacity .18s,transform .18s;}\n#verifactu-landing .opciones button:hover{border-color:var(--azul);\n  box-shadow:0 6px 20px rgba(60,68,238,.13);transform:translateY(-2px);}\n#verifactu-landing .opciones button:hover:after{opacity:1;transform:translateX(3px);}\n#verifactu-landing .opciones button:active{transform:translateY(0);}\n#verifactu-landing .atras{margin-top:24px;background:none;border:none;padding:0;cursor:pointer;\n  font-family:var(--texto);font-weight:400;font-size:15px;color:var(--gris);}\n#verifactu-landing .atras:hover{color:var(--azul);}\n#verifactu-landing .atras[hidden]{display:none;}\n#verifactu-landing .reiniciar{background:none;border:none;padding:0;cursor:pointer;font-family:var(--texto);\n  font-size:15px;color:var(--gris);text-decoration:underline;margin-top:22px;}\n#verifactu-landing .reiniciar:hover{color:var(--azul);}\n#verifactu-landing .resultado{margin-top:34px;border-radius:20px;padding:32px 32px 30px;background:var(--nieve);\n  border:1px solid var(--linea);}\n#verifactu-landing .resultado[data-estado=\"incumple\"]{background:var(--marino);border-color:var(--marino);}\n#verifactu-landing .resultado[data-estado=\"incumple\"] h3, #verifactu-landing .resultado[data-estado=\"incumple\"] p, #verifactu-landing .resultado[data-estado=\"incumple\"] li, #verifactu-landing .resultado[data-estado=\"incumple\"] ul{color:var(--blanco);}\n#verifactu-landing .resultado[data-estado=\"incumple\"] .sello{background:var(--amarillo);color:var(--marino);}\n#verifactu-landing .resultado[data-estado=\"plazo\"]{background:#fffdf0;border-color:var(--amarillo);}\n#verifactu-landing .resultado[data-estado=\"plazo\"] .sello{background:var(--amarillo);color:var(--marino);}\n#verifactu-landing .resultado[data-estado=\"confirmar\"]{background:#f3f8fb;border-color:var(--petroleo);}\n#verifactu-landing .resultado[data-estado=\"confirmar\"] .sello{background:var(--petroleo);color:var(--blanco);}\n#verifactu-landing .resultado[data-estado=\"cumple\"]{background:#f2fff6;border-color:var(--verde);}\n#verifactu-landing .resultado[data-estado=\"cumple\"] .sello{background:var(--verde);color:var(--blanco);}\n#verifactu-landing .resultado[data-estado=\"fuera\"] .sello{background:var(--petroleo);color:var(--blanco);}\n#verifactu-landing .sello{display:inline-block;font-family:var(--display);font-weight:600;font-size:14px;\n  padding:5px 14px;border-radius:40px;background:var(--celeste);color:var(--blanco);margin-bottom:14px;}\n#verifactu-landing .resultado h3{font-size:clamp(21px,2vw,26px);margin-bottom:12px;}\n#verifactu-landing .resultado ul{margin:16px 0 0;padding-left:4px;list-style:none;}\n#verifactu-landing .resultado li{margin-bottom:12px;padding-left:22px;position:relative;font-size:15.5px;line-height:1.65;}\n#verifactu-landing .resultado li:before{content:'';position:absolute;left:0;top:.62em;width:8px;height:8px;\n  border-radius:50%;background:currentColor;opacity:.4;}\n#verifactu-landing .resultado li:last-child{margin-bottom:0;}\n#verifactu-landing .formulario{border-radius:20px;border:1px solid var(--linea);padding:34px;background:var(--blanco);\n  box-shadow:0 12px 44px rgba(3,23,110,.08);}\n#verifactu-landing .campos{display:flex;flex-direction:column;gap:16px;margin-top:22px;}\n#verifactu-landing label{display:block;font-family:var(--texto);font-weight:600;font-size:14px;color:var(--marino);margin-bottom:6px;}\n#verifactu-landing input[type=text], #verifactu-landing input[type=email], #verifactu-landing input[type=tel], #verifactu-landing select, #verifactu-landing textarea{width:100%;font-family:var(--texto);\n  font-weight:300;font-size:16px;padding:13px 15px;border:1.5px solid var(--linea);border-radius:11px;\n  background:var(--blanco);color:var(--tinta);transition:border-color .18s,box-shadow .18s;}\n#verifactu-landing input:focus, #verifactu-landing select:focus, #verifactu-landing textarea:focus{border-color:var(--azul);outline:none;\n  box-shadow:0 0 0 3px rgba(60,68,238,.13);}\n#verifactu-landing input::placeholder, #verifactu-landing textarea::placeholder{color:#a6abc2;}\n#verifactu-landing .ancho{grid-column:1\/-1;}\n#verifactu-landing .consentimiento{display:flex;gap:12px;align-items:flex-start;margin-top:22px;font-size:14px;color:var(--gris);}\n#verifactu-landing .consentimiento input{margin-top:4px;width:18px;height:18px;flex:none;accent-color:var(--azul);}\n#verifactu-landing .enviar{margin-top:26px;font-family:var(--display);font-weight:600;font-size:17px;color:var(--blanco);\n  background:var(--marino);border:none;border-radius:40px;padding:16px 34px;cursor:pointer;\n  transition:background .2s,transform .18s,box-shadow .18s;min-height:54px;}\n#verifactu-landing .enviar:hover{background:var(--azul);transform:translateY(-2px);box-shadow:0 8px 22px rgba(60,68,238,.28);}\n#verifactu-landing .enviar:active{transform:translateY(0);}\n#verifactu-landing .recogida{font-size:13px;color:var(--gris);margin-top:16px;}\n#verifactu-landing .recap{margin-top:22px;padding:18px 20px;background:var(--nieve);border-radius:14px;\n  border:1px solid var(--linea);}\n#verifactu-landing .recap p{margin:0 0 10px;font-size:14px;color:var(--gris);}\n#verifactu-landing .recap .fichas{display:flex;flex-wrap:wrap;gap:8px;}\n#verifactu-landing .recap .fichas span{font-size:13px;background:var(--blanco);border:1px solid var(--linea);\n  border-radius:40px;padding:5px 12px;color:var(--marino);}\n#verifactu-landing .recap .fichas span b{font-weight:600;}\n#verifactu-landing .enviar[disabled]{opacity:.55;cursor:progress;}\n#verifactu-landing .gracias{text-align:left;}\n#verifactu-landing .gracias .sello{margin-bottom:16px;}\n#verifactu-landing .gracias h2{margin-bottom:14px;}\n#verifactu-landing .gracias ul{margin:16px 0 0;padding-left:20px;color:var(--gris);font-size:15px;}\n#verifactu-landing .gracias li{margin-bottom:8px;}\n#verifactu-landing .aviso-error{margin-top:16px;padding:14px 16px;border-radius:12px;background:#fffdf0;\n  border:1px solid var(--amarillo);font-size:14px;color:var(--marino);}\n#verifactu-landing .opcional{font-weight:400;font-size:12px;color:var(--gris);background:var(--nieve);\n  border:1px solid var(--linea);border-radius:30px;padding:2px 8px;margin-left:6px;\n  text-transform:none;letter-spacing:0;}\n#verifactu-landing .pista{margin:6px 0 0;font-size:13px;color:var(--gris);}\n#verifactu-landing .fallo{margin:6px 0 0;font-size:13px;color:#a3122b;font-weight:400;}\n#verifactu-landing input.malo, #verifactu-landing textarea.malo{border-color:#a3122b;box-shadow:0 0 0 3px rgba(163,18,43,.10);}\n#verifactu-landing .extras{border:1px solid var(--linea);border-radius:14px;margin-top:16px;background:var(--nieve);}\n#verifactu-landing .extras summary{font-family:var(--texto);font-weight:600;font-size:14.5px;color:var(--marino);\n  padding:14px 18px;}\n#verifactu-landing .extras summary:after{content:'+';right:16px;font-size:20px;}\n#verifactu-landing .extras[open] summary:after{content:'\u2013';}\n#verifactu-landing .extras-cuerpo{display:flex;flex-direction:column;gap:16px;padding:2px 18px 20px;}\n#verifactu-landing .etiqueta-grupo{display:block;font-family:var(--texto);font-weight:600;font-size:14px;\n  color:var(--marino);margin-bottom:8px;}\n#verifactu-landing .radios{display:flex;flex-wrap:wrap;gap:8px;}\n#verifactu-landing .radios label{display:inline-flex;align-items:center;margin:0;font-weight:300;font-size:14.5px;\n  color:var(--marino);border:1.5px solid var(--linea);border-radius:40px;padding:8px 15px;\n  background:var(--blanco);cursor:pointer;transition:border-color .18s,background .18s;}\n#verifactu-landing .radios label:hover{border-color:var(--azul);}\n#verifactu-landing .radios input{position:absolute;opacity:0;width:0;height:0;}\n#verifactu-landing .radios input:checked + span{font-weight:600;}\n#verifactu-landing .radios label:has(input:checked){border-color:var(--marino);background:var(--marino);color:var(--blanco);}\n#verifactu-landing .radios input:focus-visible + span{outline:3px solid var(--azul);outline-offset:4px;border-radius:3px;}\n#verifactu-landing .confianza{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:7px;}\n#verifactu-landing .confianza li{position:relative;padding-left:24px;font-size:13.5px;color:var(--gris);line-height:1.5;}\n#verifactu-landing .confianza li:before{content:'';position:absolute;left:4px;top:.45em;width:9px;height:5px;\n  border-left:2px solid var(--verde);border-bottom:2px solid var(--verde);\n  transform:rotate(-45deg);}\n#verifactu-landing .depurar{margin-top:18px;border:1px dashed var(--celeste);border-radius:12px;background:#f3fbff;}\n#verifactu-landing .depurar summary{font-family:var(--texto);font-weight:600;font-size:13.5px;color:var(--petroleo);\n  padding:12px 16px;min-height:0;}\n#verifactu-landing .depurar summary:after{right:14px;font-size:18px;}\n#verifactu-landing .depurar .interior{padding:0 16px 16px;}\n#verifactu-landing .depurar table{width:100%;border-collapse:collapse;font-size:12.5px;margin-bottom:12px;}\n#verifactu-landing .depurar th, #verifactu-landing .depurar td{text-align:left;padding:5px 8px;border-bottom:1px solid #d7ecf7;\n  vertical-align:top;word-break:break-word;}\n#verifactu-landing .depurar th{font-weight:600;color:var(--marino);width:34%;}\n#verifactu-landing .depurar textarea{width:100%;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;\n  border:1px solid #cfe6f4;border-radius:8px;padding:10px;background:var(--blanco);}\n#verifactu-landing .depurar p{font-size:12.5px;color:var(--gris);margin:0 0 10px;}\n#verifactu-landing .faqs{margin-top:34px;border-top:1px solid var(--linea);}\n#verifactu-landing details{border-bottom:1px solid var(--linea);}\n#verifactu-landing summary{padding:22px 48px 22px 0;cursor:pointer;list-style:none;position:relative;\n  transition:color .18s;}\n#verifactu-landing summary h3{font-family:var(--display);font-weight:500;font-size:clamp(16.5px,1.6vw,19px);\n  color:inherit;margin:0;display:inline;}\n#verifactu-landing .faqs summary{color:var(--marino);}\n#verifactu-landing summary:hover{color:var(--azul);}\n#verifactu-landing summary::-webkit-details-marker{display:none;}\n#verifactu-landing summary:after{content:'+';position:absolute;right:6px;top:50%;transform:translateY(-50%);\n  font-size:26px;font-weight:400;color:var(--azul);line-height:1;}\n#verifactu-landing details[open] summary:after{content:'\u2013';}\n#verifactu-landing details[open] summary{color:var(--azul);}\n#verifactu-landing details .cuerpo{padding:0 0 22px;max-width:62em;}\n#verifactu-landing details .cuerpo p:last-child{margin-bottom:0;}\n#verifactu-landing .cierre{border-top:1px solid var(--linea);margin-top:14px;padding:34px 0 10px;}\n#verifactu-landing .cierre .cols{display:grid;grid-template-columns:1.35fr 1fr;gap:44px;}\n#verifactu-landing .cierre h4{font-family:var(--display);font-weight:600;font-size:15px;color:var(--marino);\n  margin-bottom:10px;}\n#verifactu-landing .cierre p{font-size:13.5px;line-height:1.65;color:var(--gris);margin:0 0 9px;}\n#verifactu-landing .cierre p:last-child{margin-bottom:0;}\n#verifactu-landing .cierre a{color:var(--azul);}\n@media (max-width:940px){\n#verifactu-landing .desenlace{grid-template-columns:1fr;}\n#verifactu-landing .desenlace .columna-veredicto{position:static;}\n#verifactu-landing .desenlace .resultado{padding:24px;}\n#verifactu-landing .desenlace .resultado h3{font-size:21px;}\n#verifactu-landing .desenlace .resultado li{font-size:15px;}\n}\n#verifactu-landing .barra{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;\n  background:var(--marino);padding:12px 16px;box-shadow:0 -6px 24px rgba(3,23,110,.22);}\n#verifactu-landing .barra button{width:100%;font-family:var(--display);font-weight:600;font-size:16px;\n  color:var(--marino);background:var(--amarillo);border:none;border-radius:40px;padding:14px;cursor:pointer;}\n#verifactu-landing .barra[data-ver=\"si\"]{display:block;}\n@media (min-width:941px){\n#verifactu-landing .barra{display:none!important;}\n}\n#verifactu-landing .via{display:flex;align-items:center;gap:8px;margin-bottom:26px;}\n#verifactu-landing .via span{height:5px;flex:1 1 auto;border-radius:5px;background:var(--linea);transition:background .4s;}\n#verifactu-landing .via span.hecho{background:var(--deg);}\n#verifactu-landing .via span.aqui{background:var(--azul);}\n#verifactu-landing .via em{font-family:var(--display);font-weight:500;font-style:normal;font-size:14px;\n  color:var(--petroleo);flex:none;padding-left:6px;}\n#verifactu-landing .rastro{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}\n#verifactu-landing .rastro button{font-family:var(--texto);font-weight:400;font-size:13.5px;color:var(--marino);\n  background:var(--nieve);border:1px solid var(--linea);border-radius:40px;padding:6px 14px;\n  cursor:pointer;display:inline-flex;gap:7px;align-items:center;transition:all .2s;}\n#verifactu-landing .rastro button:hover{border-color:var(--azul);color:var(--azul);background:var(--blanco);}\n#verifactu-landing .rastro button b{font-weight:600;}\n#verifactu-landing .rastro button i{font-style:normal;color:var(--gris);font-size:12px;}\n#verifactu-landing .tarjeta{border:1px solid var(--linea);border-radius:20px;padding:36px 36px 30px;\n  background:var(--blanco);box-shadow:0 12px 44px rgba(3,23,110,.08);}\n#verifactu-landing .tarjeta.entra{animation:aparece .34s cubic-bezier(.2,.7,.3,1) both;}\n@keyframes aparece{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}\n#verifactu-landing .tarjeta h3{font-size:clamp(22px,2.6vw,28px);}\n#verifactu-landing .tarjeta .matiz{font-size:16px;color:var(--gris);margin:12px 0 0;max-width:44em;}\n#verifactu-landing .opciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}\n#verifactu-landing .opciones button{font-family:var(--texto);font-weight:400;font-size:16px;padding:15px 22px 15px 24px;\n  border-radius:14px;border:1.5px solid var(--linea);background:var(--blanco);color:var(--marino);\n  cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s;text-align:left;\n  display:inline-flex;align-items:center;gap:14px;min-height:54px;}\n#verifactu-landing .opciones button:after{content:'\u2192';color:var(--azul);opacity:.35;transition:opacity .18s,transform .18s;}\n#verifactu-landing .opciones button:hover{border-color:var(--azul);\n  box-shadow:0 6px 20px rgba(60,68,238,.13);transform:translateY(-2px);}\n#verifactu-landing .opciones button:hover:after{opacity:1;transform:translateX(3px);}\n#verifactu-landing .opciones button:active{transform:translateY(0);}\n#verifactu-landing .atras{margin-top:24px;background:none;border:none;padding:0;cursor:pointer;\n  font-family:var(--texto);font-weight:400;font-size:15px;color:var(--gris);}\n#verifactu-landing .atras:hover{color:var(--azul);}\n#verifactu-landing .atras[hidden]{display:none;}\n#verifactu-landing .reiniciar{background:none;border:none;padding:0;cursor:pointer;font-family:var(--texto);\n  font-size:15px;color:var(--gris);text-decoration:underline;margin-top:22px;}\n#verifactu-landing .reiniciar:hover{color:var(--azul);}\n#verifactu-landing .resultado{margin-top:34px;border-radius:20px;padding:32px 32px 30px;background:var(--nieve);\n  border:1px solid var(--linea);}\n#verifactu-landing .resultado[data-estado=\"incumple\"]{background:var(--marino);border-color:var(--marino);}\n#verifactu-landing .resultado[data-estado=\"incumple\"] h3, #verifactu-landing .resultado[data-estado=\"incumple\"] p, #verifactu-landing .resultado[data-estado=\"incumple\"] li, #verifactu-landing .resultado[data-estado=\"incumple\"] ul{color:var(--blanco);}\n#verifactu-landing .resultado[data-estado=\"incumple\"] .sello{background:var(--amarillo);color:var(--marino);}\n#verifactu-landing .resultado[data-estado=\"plazo\"]{background:#fffdf0;border-color:var(--amarillo);}\n#verifactu-landing .resultado[data-estado=\"plazo\"] .sello{background:var(--amarillo);color:var(--marino);}\n#verifactu-landing .resultado[data-estado=\"confirmar\"]{background:#f3f8fb;border-color:var(--petroleo);}\n#verifactu-landing .resultado[data-estado=\"confirmar\"] .sello{background:var(--petroleo);color:var(--blanco);}\n#verifactu-landing .resultado[data-estado=\"cumple\"]{background:#f2fff6;border-color:var(--verde);}\n#verifactu-landing .resultado[data-estado=\"cumple\"] .sello{background:var(--verde);color:var(--blanco);}\n#verifactu-landing .resultado[data-estado=\"fuera\"] .sello{background:var(--petroleo);color:var(--blanco);}\n#verifactu-landing .sello{display:inline-block;font-family:var(--display);font-weight:600;font-size:14px;\n  padding:5px 14px;border-radius:40px;background:var(--celeste);color:var(--blanco);margin-bottom:14px;}\n#verifactu-landing .resultado h3{font-size:clamp(21px,2vw,26px);margin-bottom:12px;}\n#verifactu-landing .resultado ul{margin:16px 0 0;padding-left:4px;list-style:none;}\n#verifactu-landing .resultado li{margin-bottom:12px;padding-left:22px;position:relative;font-size:15.5px;line-height:1.65;}\n#verifactu-landing .resultado li:before{content:'';position:absolute;left:0;top:.62em;width:8px;height:8px;\n  border-radius:50%;background:currentColor;opacity:.4;}\n#verifactu-landing .resultado li:last-child{margin-bottom:0;}\n#verifactu-landing .formulario{border-radius:20px;border:1px solid var(--linea);padding:34px;background:var(--blanco);\n  box-shadow:0 12px 44px rgba(3,23,110,.08);}\n#verifactu-landing .campos{display:flex;flex-direction:column;gap:16px;margin-top:22px;}\n#verifactu-landing label{display:block;font-family:var(--texto);font-weight:600;font-size:14px;color:var(--marino);margin-bottom:6px;}\n#verifactu-landing input[type=text], #verifactu-landing input[type=email], #verifactu-landing input[type=tel], #verifactu-landing select, #verifactu-landing textarea{width:100%;font-family:var(--texto);\n  font-weight:300;font-size:16px;padding:13px 15px;border:1.5px solid var(--linea);border-radius:11px;\n  background:var(--blanco);color:var(--tinta);transition:border-color .18s,box-shadow .18s;}\n#verifactu-landing input:focus, #verifactu-landing select:focus, #verifactu-landing textarea:focus{border-color:var(--azul);outline:none;\n  box-shadow:0 0 0 3px rgba(60,68,238,.13);}\n#verifactu-landing input::placeholder, #verifactu-landing textarea::placeholder{color:#a6abc2;}\n#verifactu-landing .ancho{grid-column:1\/-1;}\n#verifactu-landing .consentimiento{display:flex;gap:12px;align-items:flex-start;margin-top:22px;font-size:14px;color:var(--gris);}\n#verifactu-landing .consentimiento input{margin-top:4px;width:18px;height:18px;flex:none;accent-color:var(--azul);}\n#verifactu-landing .enviar{margin-top:26px;font-family:var(--display);font-weight:600;font-size:17px;color:var(--blanco);\n  background:var(--marino);border:none;border-radius:40px;padding:16px 34px;cursor:pointer;\n  transition:background .2s,transform .18s,box-shadow .18s;min-height:54px;}\n#verifactu-landing .enviar:hover{background:var(--azul);transform:translateY(-2px);box-shadow:0 8px 22px rgba(60,68,238,.28);}\n#verifactu-landing .enviar:active{transform:translateY(0);}\n#verifactu-landing .recogida{font-size:13px;color:var(--gris);margin-top:16px;}\n#verifactu-landing .recap{margin-top:22px;padding:18px 20px;background:var(--nieve);border-radius:14px;\n  border:1px solid var(--linea);}\n#verifactu-landing .recap p{margin:0 0 10px;font-size:14px;color:var(--gris);}\n#verifactu-landing .recap .fichas{display:flex;flex-wrap:wrap;gap:8px;}\n#verifactu-landing .recap .fichas span{font-size:13px;background:var(--blanco);border:1px solid var(--linea);\n  border-radius:40px;padding:5px 12px;color:var(--marino);}\n#verifactu-landing .recap .fichas span b{font-weight:600;}\n#verifactu-landing .enviar[disabled]{opacity:.55;cursor:progress;}\n#verifactu-landing .gracias{text-align:left;}\n#verifactu-landing .gracias .sello{margin-bottom:16px;}\n#verifactu-landing .gracias h2{margin-bottom:14px;}\n#verifactu-landing .gracias ul{margin:16px 0 0;padding-left:20px;color:var(--gris);font-size:15px;}\n#verifactu-landing .gracias li{margin-bottom:8px;}\n#verifactu-landing .aviso-error{margin-top:16px;padding:14px 16px;border-radius:12px;background:#fffdf0;\n  border:1px solid var(--amarillo);font-size:14px;color:var(--marino);}\n#verifactu-landing .opcional{font-weight:400;font-size:12px;color:var(--gris);background:var(--nieve);\n  border:1px solid var(--linea);border-radius:30px;padding:2px 8px;margin-left:6px;\n  text-transform:none;letter-spacing:0;}\n#verifactu-landing .pista{margin:6px 0 0;font-size:13px;color:var(--gris);}\n#verifactu-landing .fallo{margin:6px 0 0;font-size:13px;color:#a3122b;font-weight:400;}\n#verifactu-landing input.malo, #verifactu-landing textarea.malo{border-color:#a3122b;box-shadow:0 0 0 3px rgba(163,18,43,.10);}\n#verifactu-landing .extras{border:1px solid var(--linea);border-radius:14px;margin-top:16px;background:var(--nieve);}\n#verifactu-landing .extras summary{font-family:var(--texto);font-weight:600;font-size:14.5px;color:var(--marino);\n  padding:14px 18px;}\n#verifactu-landing .extras summary:after{content:'+';right:16px;font-size:20px;}\n#verifactu-landing .extras[open] summary:after{content:'\u2013';}\n#verifactu-landing .extras-cuerpo{display:flex;flex-direction:column;gap:16px;padding:2px 18px 20px;}\n#verifactu-landing .etiqueta-grupo{display:block;font-family:var(--texto);font-weight:600;font-size:14px;\n  color:var(--marino);margin-bottom:8px;}\n#verifactu-landing .radios{display:flex;flex-wrap:wrap;gap:8px;}\n#verifactu-landing .radios label{display:inline-flex;align-items:center;margin:0;font-weight:300;font-size:14.5px;\n  color:var(--marino);border:1.5px solid var(--linea);border-radius:40px;padding:8px 15px;\n  background:var(--blanco);cursor:pointer;transition:border-color .18s,background .18s;}\n#verifactu-landing .radios label:hover{border-color:var(--azul);}\n#verifactu-landing .radios input{position:absolute;opacity:0;width:0;height:0;}\n#verifactu-landing .radios input:checked + span{font-weight:600;}\n#verifactu-landing .radios label:has(input:checked){border-color:var(--marino);background:var(--marino);color:var(--blanco);}\n#verifactu-landing .radios input:focus-visible + span{outline:3px solid var(--azul);outline-offset:4px;border-radius:3px;}\n#verifactu-landing .confianza{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:7px;}\n#verifactu-landing .confianza li{position:relative;padding-left:24px;font-size:13.5px;color:var(--gris);line-height:1.5;}\n#verifactu-landing .confianza li:before{content:'';position:absolute;left:4px;top:.45em;width:9px;height:5px;\n  border-left:2px solid var(--verde);border-bottom:2px solid var(--verde);\n  transform:rotate(-45deg);}\n#verifactu-landing .depurar{margin-top:18px;border:1px dashed var(--celeste);border-radius:12px;background:#f3fbff;}\n#verifactu-landing .depurar summary{font-family:var(--texto);font-weight:600;font-size:13.5px;color:var(--petroleo);\n  padding:12px 16px;min-height:0;}\n#verifactu-landing .depurar summary:after{right:14px;font-size:18px;}\n#verifactu-landing .depurar .interior{padding:0 16px 16px;}\n#verifactu-landing .depurar table{width:100%;border-collapse:collapse;font-size:12.5px;margin-bottom:12px;}\n#verifactu-landing .depurar th, #verifactu-landing .depurar td{text-align:left;padding:5px 8px;border-bottom:1px solid #d7ecf7;\n  vertical-align:top;word-break:break-word;}\n#verifactu-landing .depurar th{font-weight:600;color:var(--marino);width:34%;}\n#verifactu-landing .depurar textarea{width:100%;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;\n  border:1px solid #cfe6f4;border-radius:8px;padding:10px;background:var(--blanco);}\n#verifactu-landing .depurar p{font-size:12.5px;color:var(--gris);margin:0 0 10px;}\n#verifactu-landing .faqs{margin-top:34px;border-top:1px solid var(--linea);}\n#verifactu-landing details{border-bottom:1px solid var(--linea);}\n#verifactu-landing summary{padding:22px 48px 22px 0;cursor:pointer;list-style:none;position:relative;\n  transition:color .18s;}\n#verifactu-landing summary h3{font-family:var(--display);font-weight:500;font-size:clamp(16.5px,1.6vw,19px);\n  color:inherit;margin:0;display:inline;}\n#verifactu-landing .faqs summary{color:var(--marino);}\n#verifactu-landing summary:hover{color:var(--azul);}\n#verifactu-landing summary::-webkit-details-marker{display:none;}\n#verifactu-landing summary:after{content:'+';position:absolute;right:6px;top:50%;transform:translateY(-50%);\n  font-size:26px;font-weight:400;color:var(--azul);line-height:1;}\n#verifactu-landing details[open] summary:after{content:'\u2013';}\n#verifactu-landing details[open] summary{color:var(--azul);}\n#verifactu-landing details .cuerpo{padding:0 0 22px;max-width:62em;}\n#verifactu-landing details .cuerpo p:last-child{margin-bottom:0;}\n#verifactu-landing .pie{background:var(--marino);color:#c9cfe8;padding:46px 0 40px;margin-top:60px;font-size:14px;}\n#verifactu-landing .pie h4{color:var(--blanco);font-size:17px;margin-bottom:12px;}\n#verifactu-landing .pie a{color:var(--cian);}\n#verifactu-landing .pie .cols{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;}\n@media (max-width:940px){\n#verifactu-landing .envoltorio{padding:0 20px;}\n#verifactu-landing .portada{padding:40px 0 34px;}\n#verifactu-landing .seccion{padding:46px 0;}\n#verifactu-landing .justificado{text-align:left;}\n#verifactu-landing .opciones{flex-direction:column;gap:10px;}\n#verifactu-landing .opciones button{width:100%;justify-content:space-between;}\n#verifactu-landing .tarjeta{padding:26px 22px 24px;border-radius:18px;}\n#verifactu-landing .desenlace .formulario{padding:24px 22px;}\n#verifactu-landing .fechas div{border-right:none;border-bottom:1px solid var(--linea);padding:16px 0;}\n#verifactu-landing .fechas div:last-child{border-bottom:none;}\n#verifactu-landing .via em{font-size:13px;}\n#verifactu-landing .barra ~ .seccion:last-of-type{padding-bottom:96px;}\n}\n@media (max-width:560px){\n#verifactu-landing{font-size:16px;}\n#verifactu-landing .aviso .envoltorio{flex-direction:column;gap:12px;}\n#verifactu-landing .aviso button{margin-left:0;}\n#verifactu-landing .rastro button{font-size:12.5px;padding:5px 11px;}\n#verifactu-landing .via{gap:5px;margin-bottom:20px;}\n#verifactu-landing .resultado{padding:24px 20px;}\n#verifactu-landing .enviar{width:100%;}\n#verifactu-landing .cierre .cols{grid-template-columns:1fr;gap:24px;}\n}\n@media (prefers-reduced-motion:reduce){\n#verifactu-landing *{transition:none!important;animation:none!important;}\n}\n#verifactu-landing .envoltorio{max-width:1280px;padding:0 clamp(20px,3vw,44px);}\n#verifactu-landing .portada .envoltorio{max-width:1280px;padding:0 clamp(22px,3vw,44px);}\n#verifactu-landing .portada-rejilla{grid-template-columns:minmax(0,1.34fr) minmax(0,.66fr);gap:52px;}\n#verifactu-landing .portada:before{width:min(760px,54vw);height:min(460px,48vh);}\n@media (max-width:860px){\n#verifactu-landing .portada-rejilla{grid-template-columns:1fr;gap:30px;}\n#verifactu-landing .portada:before{width:78vw;height:250px;}\n}\n@media (max-width:940px){\n#verifactu-landing .envoltorio{padding:0 20px;}\n}\n#verifactu-landing #diagnostico, #verifactu-landing .desenlace, #verifactu-landing #cajaFormulario, #verifactu-landing #faqs{scroll-margin-top:0;}\n@media (max-width:940px){\n#verifactu-landing #diagnostico, #verifactu-landing .desenlace, #verifactu-landing #cajaFormulario, #verifactu-landing #faqs{scroll-margin-top:0;}\n}\n#verifactu-landing .via{gap:10px;}\n#verifactu-landing .via em{padding-left:12px;}\n#verifactu-landing .portada-imagen{align-items:flex-end;}\n#verifactu-landing .pila{display:flex;flex-direction:column;align-items:flex-end;gap:14px;width:100%;max-width:440px;}\n#verifactu-landing .marco-app{width:100%;height:0;padding-top:75%;position:relative;overflow:hidden;}\n#verifactu-landing .marco-app[hidden]{display:none!important;}\n#verifactu-landing .marco-app img{position:absolute!important;top:0!important;left:0!important;\n  display:block!important;max-width:none!important;min-width:0!important;\n  width:100%!important;height:100%!important;max-height:none!important;\n  object-fit:contain!important;object-position:center!important;\n  transform:none!important;}\n#verifactu-landing .marco-logo{display:inline-flex;align-items:center;justify-content:center;}\n#verifactu-landing .marco-logo img{width:auto!important;height:48px!important;max-width:100%!important;display:block!important;}\n#verifactu-landing .pila:not(:has(.marco-app:not([hidden]))) .marco-logo img{height:78px!important;}\n#verifactu-landing .portada-imagen figcaption{margin:2px 0 0;font-size:12.5px;line-height:1.5;\n  color:var(--gris);text-align:right;max-width:440px;}\n@media (max-width:900px){\n#verifactu-landing .portada-imagen{justify-content:center;}\n#verifactu-landing .pila{align-items:center;max-width:360px;}\n#verifactu-landing .portada-imagen figcaption{text-align:center;}\n#verifactu-landing .marco-logo img{height:40px!important;}\n#verifactu-landing .pila:not(:has(.marco-app:not([hidden]))) .marco-logo img{height:56px!important;}\n}\n#verifactu-landing .envoltorio{max-width:1280px;padding:0 clamp(20px,3vw,44px);}\n#verifactu-landing .portada .envoltorio{max-width:1280px;padding:0 clamp(22px,3vw,44px);}\n#verifactu-landing .portada-rejilla{grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr);gap:48px;}\n#verifactu-landing .pila{max-width:470px;}\n#verifactu-landing .portada-imagen figcaption{max-width:470px;}\n#verifactu-landing .portada:before{width:min(760px,54vw);height:min(460px,48vh);}\n@media (max-width:900px){\n#verifactu-landing .portada-rejilla{grid-template-columns:1fr;}\n#verifactu-landing .pila{max-width:420px;}\n}\n#verifactu-landing #diagnostico, #verifactu-landing .desenlace, #verifactu-landing #cajaFormulario, #verifactu-landing #faqs{scroll-margin-top:0;}\n@media (max-width:940px){\n#verifactu-landing #diagnostico, #verifactu-landing .desenlace, #verifactu-landing #cajaFormulario, #verifactu-landing #faqs{scroll-margin-top:0;}\n}\n#verifactu-landing .via{gap:10px;}\n#verifactu-landing .via em{padding-left:12px;}\n<\/style>\n\n<div id=\"verifactu-landing\">\n<header class=\"portada\">\n  <div class=\"envoltorio\">\n    <div class=\"portada-rejilla\">\n      <div class=\"portada-texto\">\n    <h1>T'obliga el <em>VeriFactu<\/em> si tens punts de rec\u00e0rrega?<\/h1>\n    <p class=\"entradilla\"><strong>S\u00ed, si est\u00e0s obligat a emetre factura, l'emets amb algun programari i tributes en territori com\u00fa: des de l'1 de gener de 2027 si ets societat, i des de l'1 de juliol de 2027 si ets aut\u00f2nom.<\/strong> Cada factura haur\u00e0 de portar registre de facturaci\u00f3 amb hash, signatura electr\u00f2nica i codi QR. Si est\u00e0s en el SII, al Pa\u00eds Basc o a Navarra, o actues com a Administraci\u00f3 P\u00fablica, el teu cas segueix una altra via.<\/p>\n    <p class=\"entradilla-2\">Respon cinc preguntes sobre com factures avui la rec\u00e0rrega i et diem com t'afecta, qu\u00e8 has de decidir i amb quina data.<\/p>\n    <div class=\"arranque\">\n      <a class=\"boton-arranque\" href=\"#diagnostico\" id=\"irDiagnostico\">Veure com m'afecta <span aria-hidden=\"true\">\u2193<\/span><\/a>\n      <p class=\"condiciones\">Menys d'un minut. Sense registrar-te i sense deixar cap dada.<\/p>\n    <\/div>\n      <\/div>\n      <figure class=\"portada-imagen\" id=\"figuraLogo\">\n        <div class=\"pila\">\n        <div class=\"marco-app\" id=\"marcoApp\">\n          <img id=\"imgApp\" src=\"https:\/\/etecnic.es\/wp-content\/uploads\/2026\/09\/Mockup-Backend-scaled.png\" alt=\"Backoffice 2.0 d'EVcharge a l'ordinador i l'aplicaci\u00f3 de rec\u00e0rrega al m\u00f2bil\" loading=\"eager\" decoding=\"async\">\n        <\/div>\n        <div class=\"marco-logo\">\n        <img id=\"imgLogo\" src=\"https:\/\/etecnic.es\/wp-content\/uploads\/2026\/08\/verifactu-logo.png\" alt=\"Logotip del sistema VeriFactu de l'Ag\u00e8ncia Tribut\u00e0ria\" loading=\"eager\" decoding=\"async\">\n        <\/div>\n        <figcaption>La facturaci\u00f3 de la rec\u00e0rrega es gestiona des d'EVcharge. El VeriFactu \u00e9s el sistema de facturaci\u00f3 verificable de l'Ag\u00e8ncia Tribut\u00e0ria, regulat pel Reial Decret 1007\/2023.<\/figcaption>\n        <\/div>\n      <\/figure>\n    <\/div>\n    <div class=\"fechas\">\n      <div>\n        <b>5 des 2023<\/b>\n        <small>El Reial Decret 1007\/2023 aprova el Reglament VeriFactu.<\/small>\n      <\/div>\n      <div>\n        <b>3 des 2025<\/b>\n        <small>El Reial Decret llei 15\/2025 endarrereix un any l'entrada en vigor.<\/small>\n      <\/div>\n      <div>\n        <b>1 gen 2027<\/b>\n        <small>Obligatori per a societats. Aut\u00f2noms i professionals, des de l'1 de juliol de 2027.<\/small>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/header>\n\n<section class=\"seccion\" id=\"diagnostico\">\n  <div class=\"envoltorio\">\n    <p class=\"rotulo\">Diagn\u00f2stic<\/p>\n    <h2>Comencem per com factures avui<\/h2>\n    <p>Et farem una pregunta cada vegada. El recorregut s'adaptar\u00e0 a les teves respostes i podr\u00e0s tornar enrere en qualsevol moment. No necessites facilitar cap dada personal per consultar el resultat.<\/p>\n\n    <div class=\"arbol\">\n      <div class=\"via\" id=\"via\" aria-hidden=\"true\"><\/div>\n      <div class=\"rastro\" id=\"rastro\"><\/div>\n      <div id=\"pregunta\" aria-live=\"polite\"><\/div>\n\n      <div class=\"desenlace\" id=\"desenlace\" hidden>\n        <div class=\"columna-veredicto\">\n          <div class=\"resultado\" id=\"resultado\" aria-live=\"polite\"><\/div>\n          <button class=\"reiniciar\" type=\"button\" id=\"reiniciar\">Comen\u00e7ar de nou<\/button>\n        <\/div>\n        <div class=\"columna-lead\">\n<div class=\"formulario\" id=\"cajaFormulario\">\n      <p class=\"rotulo\">Pas seg\u00fcent<\/p>\n      <h2 id=\"formTitulo\">Ho revisem amb les teves dades reals<\/h2>\n      <p class=\"justificado\" id=\"formIntro\"><\/p>\n\n      <div class=\"recap\" id=\"recap\">\n        <p>Aix\u00f2 \u00e9s el que ens has explicat de la teva facturaci\u00f3. Va amb el teu missatge perqu\u00e8 qui t'atengui no t'ho hagi de tornar a preguntar.<\/p>\n        <div class=\"fichas\" id=\"recapFichas\"><\/div>\n      <\/div>\n\n      <form id=\"formulario\" novalidate>\n        <div class=\"campos\">\n          <div>\n            <label for=\"nombre\">Nom i cognoms<\/label>\n            <input type=\"text\" id=\"nombre\" name=\"nombre\" autocomplete=\"name\" required>\n            <p class=\"fallo\" id=\"fallo-nombre\" hidden><\/p>\n          <\/div>\n          <div>\n            <label for=\"empresa\">Empresa o organisme<\/label>\n            <input type=\"text\" id=\"empresa\" name=\"empresa\" autocomplete=\"organization\" required>\n            <p class=\"fallo\" id=\"fallo-empresa\" hidden><\/p>\n          <\/div>\n          <div>\n            <label for=\"email\">Correu electr\u00f2nic de treball<\/label>\n            <input type=\"email\" id=\"email\" name=\"email\" autocomplete=\"email\" required>\n            <p class=\"fallo\" id=\"fallo-email\" hidden><\/p>\n          <\/div>\n          <div>\n            <label for=\"telefono\">Tel\u00e8fon <span class=\"opcional\">opcional<\/span><\/label>\n            <input type=\"tel\" id=\"telefono\" name=\"telefono\" autocomplete=\"tel\">\n            <p class=\"pista\">Si el deixes, et truquem. Si no, t'escrivim.<\/p>\n          <\/div>\n        <\/div>\n\n        <details class=\"extras\">\n          <summary>Afegir detalls de la instal\u00b7laci\u00f3 <span class=\"opcional\">opcional<\/span><\/summary>\n          <div class=\"extras-cuerpo\">\n            <div>\n              <label for=\"provincia\">Prov\u00edncia<\/label>\n              <input type=\"text\" id=\"provincia\" name=\"provincia\" autocomplete=\"address-level1\">\n            <\/div>\n            <div>\n              <span class=\"etiqueta-grupo\">Quants punts gestiones?<\/span>\n              <div class=\"radios\" role=\"radiogroup\" aria-label=\"Quants punts gestiones\">\n                <label><input type=\"radio\" name=\"puntos\" value=\"1 a 5\"><span>1 a 5<\/span><\/label>\n                <label><input type=\"radio\" name=\"puntos\" value=\"6 a 20\"><span>6 a 20<\/span><\/label>\n                <label><input type=\"radio\" name=\"puntos\" value=\"21 a 50\"><span>21 a 50<\/span><\/label>\n                <label><input type=\"radio\" name=\"puntos\" value=\"M\u00e9s de 50\"><span>M\u00e9s de 50<\/span><\/label>\n              <\/div>\n            <\/div>\n            <div>\n              <label for=\"mensaje\">Alguna cosa que h\u00e0gim de saber<\/label>\n              <textarea id=\"mensaje\" name=\"mensaje\" rows=\"3\"><\/textarea>\n            <\/div>\n          <\/div>\n        <\/details>\n\n        <div class=\"consentimiento\">\n          <input type=\"checkbox\" id=\"rgpd\" name=\"rgpd\" required>\n          <label for=\"rgpd\" style=\"font-weight:300;color:var(--gris);margin:0;\">He llegit i accepto la <a href=\"#\" target=\"_blank\" rel=\"noopener\">pol\u00edtica de privacitat<\/a>. Etecnic tractar\u00e0 les meves dades per respondre aquesta consulta i per informar-me sobre el compliment del VeriFactu. Puc retirar el consentiment en qualsevol moment.<\/label>\n        <\/div>\n\n        <button class=\"enviar\" type=\"submit\" id=\"botonEnviar\">Enviar<\/button>\n        <p class=\"recogida\" id=\"recogida\"><\/p>\n\n        <ul class=\"confianza\">\n          <li>Sense comprom\u00eds ni pressupost obligatori<\/li>\n          <li>Les teves dades no es comparteixen amb tercers<\/li>\n          <li>Et respon una persona de l'equip, no un formulari autom\u00e0tic<\/li>\n        <\/ul>\n      <\/form>\n\n      <div id=\"marcoZoho\" hidden>\n        <iframe id=\"iframeZoho\" title=\"Formulari de contacte\" loading=\"lazy\"\n          style=\"width:100%;min-height:760px;border:0;background:transparent;\"><\/iframe>\n      <\/div>\n    <\/div>\n<div class=\"formulario gracias\" id=\"gracias\" hidden aria-live=\"polite\"><\/div>\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/section>\n\n\n<script type=\"application\/ld+json\">\n{\n \"@context\": \"https:\/\/schema.org\",\n \"@type\": \"FAQPage\",\n \"inLanguage\": \"ca-ES\",\n \"mainEntity\": [\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Qu\u00e8 \u00e9s el VeriFactu i qu\u00e8 busca l'Ag\u00e8ncia Tribut\u00e0ria amb aix\u00f2?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"El VeriFactu \u00e9s el sistema de factures verificables a la seu electr\u00f2nica de l'Ag\u00e8ncia Tribut\u00e0ria, regulat pel Reial Decret 1007\/2023, de 5 de desembre. El seu objectiu \u00e9s combatre el frau fiscal garantint que els registres de facturaci\u00f3 siguin \u00edntegres, es conservin i siguin accessibles, llegibles, tra\u00e7ables i inalterables. A la pr\u00e0ctica, que una factura no es pugui modificar ni esborrar despr\u00e9s d'haver-se em\u00e8s sense que en quedi rastre.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Quan entra en vigor exactament?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"El calendari vigent avui, despr\u00e9s de l'endarreriment aprovat el desembre de 2025, \u00e9s l'1 de gener de 2027 per als contribuents de l'Impost sobre Societats, i l'1 de juliol de 2027 per a la resta d'empresaris i professionals, inclosos els aut\u00f2noms. El calendari original era un any abans, el 2026, i ja est\u00e0 superat: el Reial Decret llei 15\/2025, publicat al BOE el 3 de desembre de 2025, el va moure un any. Les noves dates s'apliquen tamb\u00e9 als contractes vigents de manteniment pluriennal de sistemes de facturaci\u00f3 i a les seves actualitzacions.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"S'ha endarrerit dues vegades. Qu\u00e8 canvia realment amb el retard?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Nom\u00e9s la data d'exigibilitat. El motiu oficial d'Hisenda va ser donar m\u00e9s temps a l'adequaci\u00f3 t\u00e8cnica dels sistemes i evitar el col\u00b7lapse de prove\u00efdors i suport a prop de la data l\u00edmit. No canvia l'objectiu de fons, no canvien els requisits t\u00e8cnics del Reglament \u2014hash, codi QR, inalterabilitat, tra\u00e7abilitat\u2014 i no canvia el marc antifrau general, que \u00e9s vigent des del 2021 amb la Llei 11\/2021. La norma no es deroga ni se suavitza en el seu contingut.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"A qui obliga el VeriFactu i qui en queda fora?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Obliga empreses i aut\u00f2noms amb domicili fiscal a Espanya que estiguin obligats a emetre factura i que no facturin de manera completament manual, \u00e9s a dir, que facin servir algun programari de facturaci\u00f3. En queden fora, o segueixen una altra via: les empreses ja acollides al SII, que en general facturen m\u00e9s de 6 milions d'euros i ja reporten per un altre canal; les que tributen al Pa\u00eds Basc i a Navarra, que tenen el seu propi sistema antifrau, el TicketBAI en el cas basc; i les entitats p\u00fabliques, en la mesura que actuen com a Administraci\u00f3 P\u00fablica.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Quina difer\u00e8ncia hi ha entre el mode VeriFactu i el mode No VeriFactu?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Els dos modes s\u00f3n legals i el Reglament preveu tots dos a partir de l'1 de gener de 2027, i tots dos exigeixen el mateix quant a generar els registres de facturaci\u00f3, incloure el codi QR i conservar-los. La difer\u00e8ncia \u00e9s quan arriba la informaci\u00f3 a l'Ag\u00e8ncia Tribut\u00e0ria: en mode VeriFactu cada factura es reporta en temps real i queda certificada a l'instant; en mode No VeriFactu no es reporta en temps real, tot i que s\u00ed que cal conservar els registres per si Hisenda els demana. El mode No VeriFactu no es recomana per tres motius. No eximeix del risc de sanci\u00f3, i la mateixa Ag\u00e8ncia Tribut\u00e0ria ha advertit que qui no reporta en temps real \u00e9s m\u00e9s susceptible d'inspecci\u00f3. Qualsevol error hist\u00f2ric es descobreix tot de cop davant un requeriment, amb penalitzacions acumulades que poden arribar a diversos anys de facturaci\u00f3. I la feina de preparaci\u00f3 \u00e9s la mateixa que caldr\u00e0 per a la futura factura electr\u00f2nica obligat\u00f2ria: ajornar-ho no ho elimina.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Quins requisits t\u00e8cnics ha de complir el meu sistema de facturaci\u00f3?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Crear un registre de facturaci\u00f3 per cada factura emesa, amb el seu codi hash. Assegurar que aquests registres siguin inalterables i tra\u00e7ables. En mode VeriFactu, enviar-los telem\u00e0ticament a l'Ag\u00e8ncia Tribut\u00e0ria. A m\u00e9s: signar electr\u00f2nicament els documents de facturaci\u00f3 amb certificat digital, incorporar a cada factura un codi QR \u00fanic enlla\u00e7at a la seu electr\u00f2nica per verificar-ne la validesa i l'estat de report, i poder generar els arxius en els formats electr\u00f2nics admesos.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"El VeriFactu \u00e9s el mateix que la factura electr\u00f2nica obligat\u00f2ria?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"No, \u00e9s un pas previ i diferent. La factura electr\u00f2nica obligat\u00f2ria (Llei Crea i Creix) ja t\u00e9 el seu desenvolupament reglamentari aprovat i arribar\u00e0 de manera progressiva a partir del 2027, exigint factures en format electr\u00f2nic estructurat per a operacions entre empreses. Qui ja treballi en mode VeriFactu tindr\u00e0 bona part de la feina t\u00e8cnica feta quan arribi aquella obligaci\u00f3. Qui estigui en mode No VeriFactu ho haur\u00e0 de refer llavors, amb menys marge.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Quines conseq\u00fc\u00e8ncies t\u00e9 no complir?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"L'incompliment es sanciona per cada exercici amb anomalies en l'emissi\u00f3 de factures, incl\u00f2s el fet de fer servir un sistema de facturaci\u00f3 no conforme. Les conseq\u00fc\u00e8ncies depenen de la normativa aplicable i de l'actuaci\u00f3 de l'Ag\u00e8ncia Tribut\u00e0ria, i poden incloure requeriments d'esmena i sancions econ\u00f2miques que, segons els criteris publicats, poden superar els 50.000 \u20ac.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Ja estic en el SII perqu\u00e8 facturo m\u00e9s de 6 milions. M'afecta igualment?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"No per la via del VeriFactu: ja est\u00e0s obligat a reportar les teves factures a l'Ag\u00e8ncia Tribut\u00e0ria en quatre dies naturals, excloent dissabtes, diumenges i festius nacionals, que \u00e9s una obligaci\u00f3 pr\u00e8via i diferent. Per\u00f2 hi ha un punt que es passa per alt sovint: les factures de mobilitat el\u00e8ctrica emeses a trav\u00e9s de la plataforma tamb\u00e9 cal reportar-les, i cal individualitzar-les per client final. Agrupar-les sota un CIF gen\u00e8ric \u00e9s un error que conv\u00e9 revisar abans que el revisi alg\u00fa altre.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"El meu fabricant de carregadors nom\u00e9s em lliura rebuts, no factures. N'hi ha prou?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"\u00c9s previsible que diversos fabricants de maquinari optin per emetre rebuts sense IVA en lloc de factures, precisament per no ser considerats ells mateixos programari de facturaci\u00f3 i no assumir la responsabilitat del VeriFactu. Aix\u00f2 no elimina la teva obligaci\u00f3. Com a propietari del punt de rec\u00e0rrega continues obligat a emetre factura simplificada a qui te la demani, amb independ\u00e8ncia del que et lliuri el teu prove\u00efdor. Sense un sistema que ho faci, hauries de donar d'alta cada rebut a m\u00e0 a la teva comptabilitat i emetre les factures una per una.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Soc un ajuntament i tinc punts de rec\u00e0rrega. Estic exempt?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Les entitats p\u00fabliques queden fora del VeriFactu en la mesura que actuen com a Administraci\u00f3 P\u00fablica. Per\u00f2 aix\u00f2 no significa autom\u00e0ticament que un ajuntament amb punts de rec\u00e0rrega estigui exempt en tots els casos. Tampoc no ho est\u00e0, pel simple fet d'actuar en nom seu, el concessionari o l'empresa privada que gestiona el servei. \u00c9s un cas que cal revisar individualment: donar per suposada l'exempci\u00f3 suposa assumir un risc. Si est\u00e0s en aquesta situaci\u00f3, escriu-nos i ho revisem amb el teu contracte de gesti\u00f3 al davant.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Per qu\u00e8 Etecnic es considera programari de facturaci\u00f3?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Perqu\u00e8 a trav\u00e9s d'EVcharge genera i emet factures en nom dels seus clients. Aix\u00f2 obliga a presentar una declaraci\u00f3 responsable de compliment, a donar-se d'alta com a entitat col\u00b7laboradora de l'Ag\u00e8ncia Tribut\u00e0ria per poder reportar tamb\u00e9 les factures dels clients, i a obtenir l'autoritzaci\u00f3 de cada client per reportar en nom seu, mitjan\u00e7ant el Model 017. Totes aquestes factures se signen amb el certificat digital d'Etecnic, inclouen el codi QR i conserven els seus registres de facturaci\u00f3.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"Qu\u00e8 \u00e9s el mode VeriFactu d'EVcharge?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"\u00c9s el m\u00f2dul de facturaci\u00f3 d'EVcharge, ja desenvolupat, que assumeix en nom del client el cicle complet: generar el registre de facturaci\u00f3 de cada factura amb el seu hash, signar-la electr\u00f2nicament amb el certificat digital d'Etecnic, incorporar el codi QR i reportar-la en temps real a l'Ag\u00e8ncia Tribut\u00e0ria. Per poder reportar en nom dels seus clients, Etecnic ha d'estar donada d'alta com a entitat col\u00b7laboradora. Requereix que el client atorgui el Model 017. Amb el m\u00f2dul actiu, el client no ha de presentar res addicional a nivell comptable per aquelles factures.\"\n   }\n  },\n  {\n   \"@type\": \"Question\",\n   \"name\": \"I qu\u00e8 canvia per al conductor que recarrega?\",\n   \"acceptedAnswer\": {\n    \"@type\": \"Answer\",\n    \"text\": \"Rebr\u00e0 factures amb un codi QR que li permet comprovar a la seu electr\u00f2nica de l'Ag\u00e8ncia Tribut\u00e0ria que les dades de la factura s\u00f3n v\u00e0lides. M\u00e9s transpar\u00e8ncia, sense cap tr\u00e0mit per la seva banda. Si a m\u00e9s \u00e9s empresa o aut\u00f2nom, li facilita el seu propi compliment fiscal: la factura arriba ja en condicions i no ha de reclamar res.\"\n   }\n  }\n ]\n}\n<\/script>\n\n<section class=\"seccion\" id=\"faqs\">\n  <div class=\"envoltorio\">\n    <p class=\"rotulo\">Preguntes freq\u00fcents<\/p>\n    <h2>El que m\u00e9s ens pregunten sobre el VeriFactu<\/h2>\n\n    <div class=\"faqs\">\n      <details><summary><h3>Qu\u00e8 \u00e9s el VeriFactu i qu\u00e8 busca l'Ag\u00e8ncia Tribut\u00e0ria amb aix\u00f2?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">El VeriFactu \u00e9s el sistema de factures verificables a la seu electr\u00f2nica de l'Ag\u00e8ncia Tribut\u00e0ria, regulat pel Reial Decret 1007\/2023, de 5 de desembre.<\/p>\n        <p class=\"justificado\">El seu objectiu \u00e9s combatre el frau fiscal garantint que els registres de facturaci\u00f3 siguin \u00edntegres, es conservin i siguin accessibles, llegibles, tra\u00e7ables i inalterables. A la pr\u00e0ctica, que una factura no es pugui modificar ni esborrar despr\u00e9s d'haver-se em\u00e8s sense que en quedi rastre.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Quan entra en vigor exactament?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">El calendari vigent avui, despr\u00e9s de l'endarreriment aprovat el desembre de 2025, \u00e9s l'1 de gener de 2027 per als contribuents de l'Impost sobre Societats, i l'1 de juliol de 2027 per a la resta d'empresaris i professionals, inclosos els aut\u00f2noms.<\/p>\n        <p class=\"justificado\">El calendari original era un any abans, el 2026, i ja est\u00e0 superat: el Reial Decret llei 15\/2025, publicat al BOE el 3 de desembre de 2025, el va moure un any. Les noves dates s'apliquen tamb\u00e9 als contractes vigents de manteniment pluriennal de sistemes de facturaci\u00f3 i a les seves actualitzacions.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>S'ha endarrerit dues vegades. Qu\u00e8 canvia realment amb el retard?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">Nom\u00e9s la data d'exigibilitat. El motiu oficial d'Hisenda va ser donar m\u00e9s temps a l'adequaci\u00f3 t\u00e8cnica dels sistemes i evitar el col\u00b7lapse de prove\u00efdors i suport a prop de la data l\u00edmit.<\/p>\n        <p class=\"justificado\">No canvia l'objectiu de fons, no canvien els requisits t\u00e8cnics del Reglament \u2014hash, codi QR, inalterabilitat, tra\u00e7abilitat\u2014 i no canvia el marc antifrau general, que \u00e9s vigent des del 2021 amb la Llei 11\/2021. La norma no es deroga ni se suavitza en el seu contingut.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>A qui obliga el VeriFactu i qui en queda fora?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">Obliga empreses i aut\u00f2noms amb domicili fiscal a Espanya que estiguin obligats a emetre factura i que no facturin de manera completament manual, \u00e9s a dir, que facin servir algun programari de facturaci\u00f3.<\/p>\n        <p class=\"justificado\">En queden fora, o segueixen una altra via: les empreses ja acollides al SII, que en general facturen m\u00e9s de 6 milions d'euros i ja reporten per un altre canal; les que tributen al Pa\u00eds Basc i a Navarra, que tenen el seu propi sistema antifrau, el TicketBAI en el cas basc; i les entitats p\u00fabliques, en la mesura que actuen com a Administraci\u00f3 P\u00fablica.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Quina difer\u00e8ncia hi ha entre el mode VeriFactu i el mode No VeriFactu?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">Els dos modes s\u00f3n legals i el Reglament preveu tots dos a partir de l'1 de gener de 2027, i tots dos exigeixen el mateix quant a generar els registres de facturaci\u00f3, incloure el codi QR i conservar-los. La difer\u00e8ncia \u00e9s quan arriba la informaci\u00f3 a l'Ag\u00e8ncia Tribut\u00e0ria: en mode VeriFactu cada factura es reporta en temps real i queda certificada a l'instant; en mode No VeriFactu no es reporta en temps real, tot i que s\u00ed que cal conservar els registres per si Hisenda els demana.<\/p>\n        <p class=\"justificado\">El mode No VeriFactu no es recomana per tres motius. No eximeix del risc de sanci\u00f3, i la mateixa Ag\u00e8ncia Tribut\u00e0ria ha advertit que qui no reporta en temps real \u00e9s m\u00e9s susceptible d'inspecci\u00f3. Qualsevol error hist\u00f2ric es descobreix tot de cop davant un requeriment, amb penalitzacions acumulades que poden arribar a diversos anys de facturaci\u00f3. I la feina de preparaci\u00f3 \u00e9s la mateixa que caldr\u00e0 per a la futura factura electr\u00f2nica obligat\u00f2ria: ajornar-ho no ho elimina.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Quins requisits t\u00e8cnics ha de complir el meu sistema de facturaci\u00f3?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">Crear un registre de facturaci\u00f3 per cada factura emesa, amb el seu codi hash. Assegurar que aquests registres siguin inalterables i tra\u00e7ables. En mode VeriFactu, enviar-los telem\u00e0ticament a l'Ag\u00e8ncia Tribut\u00e0ria.<\/p>\n        <p class=\"justificado\">A m\u00e9s: signar electr\u00f2nicament els documents de facturaci\u00f3 amb certificat digital, incorporar a cada factura un codi QR \u00fanic enlla\u00e7at a la seu electr\u00f2nica per verificar-ne la validesa i l'estat de report, i poder generar els arxius en els formats electr\u00f2nics admesos.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>El VeriFactu \u00e9s el mateix que la factura electr\u00f2nica obligat\u00f2ria?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">No, \u00e9s un pas previ i diferent. La factura electr\u00f2nica obligat\u00f2ria (Llei Crea i Creix) ja t\u00e9 el seu desenvolupament reglamentari aprovat i arribar\u00e0 de manera progressiva a partir del 2027, exigint factures en format electr\u00f2nic estructurat per a operacions entre empreses.<\/p>\n        <p class=\"justificado\">Qui ja treballi en mode VeriFactu tindr\u00e0 bona part de la feina t\u00e8cnica feta quan arribi aquella obligaci\u00f3. Qui estigui en mode No VeriFactu ho haur\u00e0 de refer llavors, amb menys marge.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Quines conseq\u00fc\u00e8ncies t\u00e9 no complir?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">L'incompliment es sanciona per cada exercici amb anomalies en l'emissi\u00f3 de factures, incl\u00f2s el fet de fer servir un sistema de facturaci\u00f3 no conforme.<\/p>\n        <p class=\"justificado\">Les conseq\u00fc\u00e8ncies depenen de la normativa aplicable i de l'actuaci\u00f3 de l'Ag\u00e8ncia Tribut\u00e0ria, i poden incloure requeriments d'esmena i sancions econ\u00f2miques que, segons els criteris publicats, poden superar els 50.000 \u20ac.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Ja estic en el SII perqu\u00e8 facturo m\u00e9s de 6 milions. M'afecta igualment?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">No per la via del VeriFactu: ja est\u00e0s obligat a reportar les teves factures a l'Ag\u00e8ncia Tribut\u00e0ria en quatre dies naturals, excloent dissabtes, diumenges i festius nacionals, que \u00e9s una obligaci\u00f3 pr\u00e8via i diferent.<\/p>\n        <p class=\"justificado\">Per\u00f2 hi ha un punt que es passa per alt sovint: les factures de mobilitat el\u00e8ctrica emeses a trav\u00e9s de la plataforma tamb\u00e9 cal reportar-les, i cal individualitzar-les per client final. Agrupar-les sota un CIF gen\u00e8ric \u00e9s un error que conv\u00e9 revisar abans que el revisi alg\u00fa altre.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>El meu fabricant de carregadors nom\u00e9s em lliura rebuts, no factures. N'hi ha prou?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">\u00c9s previsible que diversos fabricants de maquinari optin per emetre rebuts sense IVA en lloc de factures, precisament per no ser considerats ells mateixos programari de facturaci\u00f3 i no assumir la responsabilitat del VeriFactu.<\/p>\n        <p class=\"justificado\">Aix\u00f2 no elimina la teva obligaci\u00f3. Com a propietari del punt de rec\u00e0rrega continues obligat a emetre factura simplificada a qui te la demani, amb independ\u00e8ncia del que et lliuri el teu prove\u00efdor. Sense un sistema que ho faci, hauries de donar d'alta cada rebut a m\u00e0 a la teva comptabilitat i emetre les factures una per una.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Soc un ajuntament i tinc punts de rec\u00e0rrega. Estic exempt?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">Les entitats p\u00fabliques queden fora del VeriFactu en la mesura que actuen com a Administraci\u00f3 P\u00fablica. Per\u00f2 aix\u00f2 no significa autom\u00e0ticament que un ajuntament amb punts de rec\u00e0rrega estigui exempt en tots els casos.<\/p>\n        <p class=\"justificado\">Tampoc no ho est\u00e0, pel simple fet d'actuar en nom seu, el concessionari o l'empresa privada que gestiona el servei. \u00c9s un cas que cal revisar individualment: donar per suposada l'exempci\u00f3 suposa assumir un risc. Si est\u00e0s en aquesta situaci\u00f3, escriu-nos i ho revisem amb el teu contracte de gesti\u00f3 al davant.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Per qu\u00e8 Etecnic es considera programari de facturaci\u00f3?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">Perqu\u00e8 a trav\u00e9s d'EVcharge genera i emet factures en nom dels seus clients. Aix\u00f2 obliga a presentar una declaraci\u00f3 responsable de compliment, a donar-se d'alta com a entitat col\u00b7laboradora de l'Ag\u00e8ncia Tribut\u00e0ria per poder reportar tamb\u00e9 les factures dels clients, i a obtenir l'autoritzaci\u00f3 de cada client per reportar en nom seu, mitjan\u00e7ant el Model 017.<\/p>\n        <p class=\"justificado\">Totes aquestes factures se signen amb el certificat digital d'Etecnic, inclouen el codi QR i conserven els seus registres de facturaci\u00f3.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>Qu\u00e8 \u00e9s el mode VeriFactu d'EVcharge?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">\u00c9s el m\u00f2dul de facturaci\u00f3 d'EVcharge, ja desenvolupat, que assumeix en nom del client el cicle complet: generar el registre de facturaci\u00f3 de cada factura amb el seu hash, signar-la electr\u00f2nicament amb el certificat digital d'Etecnic, incorporar el codi QR i reportar-la en temps real a l'Ag\u00e8ncia Tribut\u00e0ria. Per poder reportar en nom dels seus clients, Etecnic ha d'estar donada d'alta com a entitat col\u00b7laboradora.<\/p>\n        <p class=\"justificado\">Requereix que el client atorgui el Model 017. Amb el m\u00f2dul actiu, el client no ha de presentar res addicional a nivell comptable per aquelles factures.<\/p>\n      <\/div><\/details>\n\n      <details><summary><h3>I qu\u00e8 canvia per al conductor que recarrega?<\/h3><\/summary><div class=\"cuerpo\">\n        <p class=\"justificado\">Rebr\u00e0 factures amb un codi QR que li permet comprovar a la seu electr\u00f2nica de l'Ag\u00e8ncia Tribut\u00e0ria que les dades de la factura s\u00f3n v\u00e0lides. M\u00e9s transpar\u00e8ncia, sense cap tr\u00e0mit per la seva banda.<\/p>\n        <p class=\"justificado\">Si a m\u00e9s \u00e9s empresa o aut\u00f2nom, li facilita el seu propi compliment fiscal: la factura arriba ja en condicions i no ha de reclamar res.<\/p>\n      <\/div><\/details>\n\n    <\/div>\n  <\/div>\n<\/section>\n\n<div class=\"barra\" id=\"barra\" data-ver=\"no\">\n  <button type=\"button\" id=\"barraBoton\">Deixar les meves dades<\/button>\n<\/div>\n\n<section class=\"seccion\" style=\"padding-top:0;\">\n  <div class=\"envoltorio\">\n   <div class=\"cierre\">\n    <div class=\"cols\">\n    <div>\n      <h4>Sobre aquest diagn\u00f2stic<\/h4>\n      <p>\u00c9s una orientaci\u00f3 general basada en el Reial Decret 1007\/2023 i en el Reial Decret llei 15\/2025. No \u00e9s assessorament fiscal ni substitueix la revisi\u00f3 del teu cas per la teva assessoria. Escriu-nos i ho revisem amb l'equip corresponent.<\/p>\n    <\/div>\n    <div>\n      <h4>Fonts oficials<\/h4>\n      <p>Reial Decret 1007\/2023, de 5 de desembre, i Reial Decret llei 15\/2025, publicats al <a href=\"https:\/\/www.boe.es\" target=\"_blank\" rel=\"noopener\">BOE<\/a>.<\/p>\n      <p>Informaci\u00f3 sobre sistemes inform\u00e0tics de facturaci\u00f3 a la seu electr\u00f2nica de l' <a href=\"https:\/\/sede.agenciatributaria.gob.es\" target=\"_blank\" rel=\"noopener\">Ag\u00e8ncia Tribut\u00e0ria<\/a>.<\/p>\n    <\/div>\n   <\/div>\n<\/section>\n\n<script>\n(function(){\n  \/\/ ---- definici\u00f3n del \u00e1rbol ----\n  var NODOS={\n    territorio:{\n      corto:'Territori',\n      titulo:'On tens el domicili fiscal?',\n      matiz:'El Pa\u00eds Basc i Navarra tenen el seu propi sistema antifrau, el TicketBAI, diferent del VeriFactu.',\n      opciones:[\n        {valor:'comun', texto:'Resta d\\'Espanya', etiqueta:'territori com\u00fa', va:'forma'},\n        {valor:'foral', texto:'Pa\u00eds Basc o Navarra', etiqueta:'territori foral', va:null}\n      ]\n    },\n    forma:{\n      corto:'Contribuent',\n      titulo:'Quin tipus de contribuent ets?',\n      matiz:'La data l\u00edmit no \u00e9s la mateixa per a una societat que per a un aut\u00f2nom.',\n      opciones:[\n        {valor:'sociedad', texto:'Societat, subjecta a l\\'Impost sobre Societats', etiqueta:'societat', va:'software'},\n        {valor:'autonomo', texto:'Aut\u00f2nom o professional', etiqueta:'aut\u00f2nom o professional', va:'software'},\n        {valor:'publica', texto:'Administraci\u00f3 p\u00fablica', etiqueta:'administraci\u00f3 p\u00fablica', va:null}\n      ]\n    },\n    software:{\n      corto:'Facturaci\u00f3',\n      titulo:'Com emets avui les factures de la rec\u00e0rrega?',\n      matiz:'El VeriFactu obliga qui factura amb un sistema inform\u00e0tic. La facturaci\u00f3 completament manual en queda fora.',\n      opciones:[\n        {valor:'sistema', texto:'Amb un programari o una plataforma', etiqueta:'amb programari', va:'sii'},\n        {valor:'manual', texto:'Totalment a m\u00e0, sense programari', etiqueta:'a m\u00e0, sense programari', va:null}\n      ]\n    },\n    sii:{\n      corto:'SII',\n      titulo:'Est\u00e0s en el SII, el Subministrament Immediat d\\'Informaci\u00f3?',\n      matiz:'\u00c9s l\\'obligaci\u00f3 de reportar les factures a l\\'Ag\u00e8ncia Tribut\u00e0ria en quatre dies naturals, excloent dissabtes, diumenges i festius nacionals. Afecta en general qui factura m\u00e9s de 6 milions d\\'euros.',\n      opciones:[\n        {valor:'si', texto:'S\u00ed, reporto pel SII', etiqueta:'en el SII', va:'integracion'},\n        {valor:'no', texto:'No', etiqueta:'fora del SII', va:'quien'}\n      ]\n    },\n    integracion:{\n      corto:'Integraci\u00f3',\n      titulo:'El teu sistema de facturaci\u00f3 ja est\u00e0 integrat amb l\\'API d\\'EVcharge?',\n      matiz:'Si ho est\u00e0, ja rep les dades de cada rec\u00e0rrega i pots emetre tu la factura des del teu propi sistema.',\n      opciones:[\n        {valor:'si', texto:'S\u00ed, ja est\u00e0 integrat', etiqueta:'ja integrat', va:null},\n        {valor:'no', texto:'No, o no ho s\u00e9', etiqueta:'sense integrar', va:null}\n      ]\n    },\n    quien:{\n      corto:'Qui factura',\n      titulo:'Qui emet avui les factures de rec\u00e0rrega als usuaris?',\n      matiz:'Compta qui signa la factura, no qui opera el carregador.',\n      opciones:[\n        {valor:'etecnic', texto:'Etecnic, en nom meu', etiqueta:'Etecnic en nom seu', va:null},\n        {valor:'propio', texto:'Jo, amb el meu propi programari', etiqueta:'amb programari propi', va:null},\n        {valor:'nadie', texto:'Ning\u00fa: nom\u00e9s hi ha rebuts', etiqueta:'nom\u00e9s rebuts', va:null}\n      ]\n    }\n  };\n\n  \/\/ ---- qu\u00e9 dice el formulario seg\u00fan el resultado ----\n  var PERFILES={\n    incumple:{\n      titulo:'Ho veiem amb els teus n\u00fameros',\n      intro:'El primer \u00e9s saber quantes factures hi ha al darrere i qui les ha d\\'emetre. Deixa\\'ns com contactar amb tu i ho revisem amb tu, sense comprom\u00eds.',\n      cta:'Vull que ho revisem',\n      calificacion:'Caliente', prioridad:'Alta'\n    },\n    plazo:{\n      titulo:'T\\'ajudem a triar escenari',\n      intro:'La decisi\u00f3 no \u00e9s nom\u00e9s t\u00e8cnica: canvia qui signa la factura i qui assumeix el risc. Deixa\\'ns les teves dades i ho mirem sobre el teu cas real.',\n      cta:'Vull parlar amb un t\u00e8cnic',\n      calificacion:'Caliente', prioridad:'Alta'\n    },\n    cumple:{\n      titulo:'Repassem el que queda obert',\n      intro:'La teva via est\u00e0 clara. Conv\u00e9 comprovar que les dades de rec\u00e0rrega arriben com les necessites i que res no queda agrupat on no ha d\\'estar. Si vols, ho repassem punt per punt.',\n      cta:'Que ho revisi un t\u00e8cnic',\n      calificacion:'Templado', prioridad:'Media'\n    },\n    fuera:{\n      titulo:'En parlem igualment?',\n      intro:'Avui el VeriFactu no t\\'aplica per aquesta via, i no et direm el contrari. Si la teva situaci\u00f3 pot canviar o vols deixar-ho preparat, escriu-nos i ho mirem sense comprom\u00eds.',\n      cta:'Que m\\'escriguin',\n      calificacion:'Fr\u00edo', prioridad:'Baja'\n    }\n  };\n\n  \/\/ ---- captura de UTMs, para que viajen con el lead ----\n  var utm={};\n  (function(){\n    var q=new URLSearchParams(location.search);\n    ['utm_source','utm_medium','utm_campaign','utm_content','utm_term'].forEach(function(k){utm[k]=q.get(k)||'';});\n  })();\n\n  var camino=[];          \/\/ [{clave, valor, etiqueta}]\n  var actual='territorio';\/\/ nodo en pantalla, o null si ya hay resultado\n  var elPregunta=document.getElementById('pregunta');\n  var elRastro=document.getElementById('rastro');\n  var elVia=document.getElementById('via');\n  var elResultado=document.getElementById('resultado');\n  var elReiniciar=document.getElementById('reiniciar');\n  var elDesenlace=document.getElementById('desenlace');\n\n  \/\/ texto completo de cada pregunta con la respuesta elegida y su aclaraci\u00f3n\n  function transcripcion(){\n    var t=camino.map(function(x,i){\n      var n=NODOS[x.clave];\n      var op=n.opciones.filter(function(o){return o.valor===x.valor;})[0];\n      return (i+1)+'. '+n.titulo+'\\n'+\n             '   Respuesta: '+(op?op.texto:x.etiqueta)+'\\n'+\n             '   Contexto: '+n.matiz;\n    }).join('\\n\\n');\n    \/* El formulario no pide adjuntos a proposito. Si el cliente no sabe la\n       potencia, se avisa aqui para que quien atienda le pida las dos fotos. *\/\n    if(respuestas().potencia==='nose'){\n      t+='\\n\\n--- PARA QUIEN ATIENDA ---\\n'+\n         'El cliente no conoce la potencia del punto de recarga. Pidele dos fotos:\\n'+\n         '  1) el frontal del cargador\\n'+\n         '  2) la placa de caracteristicas (la pegatina con letras y numeros del lateral o de la parte de atras)\\n'+\n         'Con la potencia maxima de placa se determina si le aplica el terminal de pago. '+\n         'Recuerda: cuenta la potencia maxima que el equipo puede entregar, no la que tenga limitada por software.';\n    }\n    return t;\n  }\n\n  \/\/ { Territorio:'territorio com\u00fan', Contribuyente:'sociedad', ... }\n  function etiquetadas(){\n    var o={};\n    camino.forEach(function(x){ o[NODOS[x.clave].corto]=x.etiqueta; });\n    return o;\n  }\n\n  function respuestas(){\n    var o={};camino.forEach(function(p){o[p.clave]=p.valor;});return o;\n  }\n\n  \/* ---- encuadre de scroll -----------------------------------------------\n     La cabecera fija del tema se mide en vivo en lugar de suponer una altura:\n     en la web se respeta, y en el archivo suelto (que no la lleva) la seccion\n     queda pegada arriba y el bloque anterior desaparece del todo en lugar de\n     verse cortado. Con un segundo elemento, baja lo justo para que su final\n     entre en pantalla. *\/\n  function altoCabecera(){\n    \/* Se recorre la PILA de barras fijas desde el borde de arriba y se van\n       sumando. No vale exigir que la primera empiece en y=0: con la barra de\n       administracion de WordPress la cabecera del tema empieza mas abajo, y\n       antes se descartaba y el contenido quedaba tapado. *\/\n    var xs=[Math.round(window.innerWidth\/2), 30, Math.max(0,window.innerWidth-30)];\n    var tope=0, y=1, vueltas=0;\n    while(y<=260 && vueltas<10){\n      vueltas++;\n      var fijo=null;\n      for(var i=0;i<xs.length && !fijo;i++){\n        var el=document.elementFromPoint(xs[i], y);\n        while(el && el!==document.body && el!==document.documentElement){\n          var cs=window.getComputedStyle(el);\n          if(cs.position==='fixed'||cs.position==='sticky'){ fijo=el; break; }\n          el=el.parentElement;\n        }\n      }\n      if(!fijo) break;\n      var r=fijo.getBoundingClientRect();\n      \/* alto de barra, y que baje de donde ya habiamos llegado *\/\n      if(!(r.height>0) || r.height>260 || r.bottom<=tope) break;\n      tope=r.bottom;\n      y=Math.round(r.bottom)+1;\n    }\n    return Math.round(Math.min(tope,300));\n  }\n\n  function encuadrar(inicio, fin, tope){\n    if(!inicio) return;\n    var y=window.pageYOffset||document.documentElement.scrollTop||0;\n    var cab=altoCabecera();\n    var destino=Math.round(inicio.getBoundingClientRect().top+y-cab-8);\n    if(fin){\n      var necesario=Math.round(fin.getBoundingClientRect().bottom+y+24-window.innerHeight);\n      if(necesario>destino) destino=necesario;\n    }\n    \/* Si no cabe todo, manda el veredicto: nunca se baja tanto que se meta\n       debajo de la cabecera. Se vera el final del formulario con un empujon. *\/\n    if(tope){\n      var limite=Math.round(tope.getBoundingClientRect().top+y-cab-8);\n      if(destino>limite) destino=limite;\n    }\n    var maximo=Math.max(0,(document.documentElement.scrollHeight||0)-window.innerHeight);\n    destino=Math.max(0,Math.min(destino,maximo));\n    var suave=!(window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches);\n    \/* Repaso al terminar: si la cabecera ha cambiado de alto durante el\n       desplazamiento y el principio ha quedado tapado, se empuja lo justo.\n       Si el usuario ha seguido moviendose por su cuenta, no se toca nada. *\/\n    function repasar(){\n      var ahora=window.pageYOffset||document.documentElement.scrollTop||0;\n      if(Math.abs(ahora-destino)>4) return;\n      var cab2=altoCabecera();\n      var arriba=inicio.getBoundingClientRect().top;\n      if(arriba < cab2-1){\n        window.scrollTo(0, Math.max(0, ahora-(cab2-arriba)-8));\n      }\n    }\n    if(suave){ window.scrollTo({top:destino,behavior:'smooth'}); setTimeout(repasar,700); }\n    else { window.scrollTo(0,destino); setTimeout(repasar,60); }\n  }\n\n  function pintarVia(){\n    \/\/ un segmento por respuesta dada, mas uno para la pregunta en curso\n    var trozos='';\n    camino.forEach(function(){trozos+='<span class=\"hecho\"><\/span>';});\n    if(actual) trozos+='<span class=\"aqui\"><\/span>';\n    var n=camino.length+(actual?1:0);\n    elVia.innerHTML=trozos+'<em>'+(actual?('Pregunta '+n):(camino.length+' respostes'))+'<\/em>';\n  }\n\n  function pintarRastro(){\n    elRastro.innerHTML='';\n    camino.forEach(function(p,i){\n      var b=document.createElement('button');\n      b.type='button';\n      b.innerHTML='<b>'+NODOS[p.clave].corto+'<\/b><i>'+p.etiqueta+'<\/i>';\n      b.title='Tornar a aquesta pregunta';\n      b.addEventListener('click',function(){volverA(i);});\n      elRastro.appendChild(b);\n    });\n  }\n\n  function volverA(i){\n    \/\/ recupera la pregunta i y descarta lo posterior\n    var clave=camino[i].clave;\n    camino=camino.slice(0,i);\n    actual=clave;\n    elDesenlace.hidden=true;\n    document.getElementById('barra').dataset.ver='no';\n    render();\n  }\n\n  function atras(){\n    if(!camino.length) return;\n    volverA(camino.length-1);\n  }\n\n  function render(){\n    pintarVia(); pintarRastro();\n    if(!actual){elPregunta.innerHTML='';return;}\n    var n=NODOS[actual];\n    var tarjeta=document.createElement('div');\n    tarjeta.className='tarjeta entra';\n    var html='<h3>'+n.titulo+'<\/h3><p class=\"matiz\">'+n.matiz+'<\/p><div class=\"opciones\">';\n    n.opciones.forEach(function(o,idx){\n      html+='<button type=\"button\" data-idx=\"'+idx+'\">'+o.texto+'<\/button>';\n    });\n    html+='<\/div>';\n    html+='<button class=\"atras\" type=\"button\"'+(camino.length?'':' hidden')+'>\u2190 Tornar a l\\'anterior<\/button>';\n    tarjeta.innerHTML=html;\n    elPregunta.innerHTML='';\n    elPregunta.appendChild(tarjeta);\n\n    tarjeta.querySelectorAll('.opciones button').forEach(function(b){\n      b.addEventListener('click',function(){elegir(parseInt(b.dataset.idx,10));});\n    });\n    var vb=tarjeta.querySelector('.atras');\n    if(vb) vb.addEventListener('click',atras);\n    var primero=tarjeta.querySelector('.opciones button');\n    if(primero && camino.length) primero.focus({preventScroll:true});\n  }\n\n  function elegir(idx){\n    var n=NODOS[actual];\n    var o=n.opciones[idx];\n    camino.push({clave:actual, valor:o.valor, etiqueta:o.etiqueta});\n    actual=o.va;\n    if(actual){ render(); }\n    else { pintarVia(); pintarRastro(); elPregunta.innerHTML=''; resolver(); }\n  }\n\n  elReiniciar.addEventListener('click',function(){\n    camino=[];actual='territorio';elDesenlace.hidden=true;document.getElementById('barra').dataset.ver='no';render();\n    encuadrar(document.getElementById('diagnostico'));\n  });\n\n  function resolver(){\n    var e=respuestas(), dato, sello, titulo, puntos=[];\n    \/\/ la fecha depende del tipo de contribuyente, y se repite en varios caminos\n    var fecha=(e.forma==='autonomo')?'1 de juliol de 2027':'1 de gener de 2027';\n    var quienEs=(e.forma==='autonomo')?'aut\u00f2noms i professionals':'els contribuents de l\\'Impost sobre Societats';\n\n    if(e.territorio==='foral'){\n      dato='fuera'; sello='Un altre sistema';\n      titulo='Al Pa\u00eds Basc i a Navarra s\\'aplica el seu propi sistema antifrau, no el VeriFactu';\n      puntos=['El Pa\u00eds Basc i Navarra tenen el seu propi sistema antifrau, diferent del VeriFactu. Els requisits de fons s\\'assemblen, per\u00f2 la norma aplicable \u00e9s la del teu territori i cal consultar-la all\u00e0.',\n              'Si a m\u00e9s tens activitat amb domicili fiscal en territori com\u00fa, aquella part s\u00ed que entra en el VeriFactu amb les dates del 2027.',\n              'Si operes punts de rec\u00e0rrega a les dues zones, val la pena ordenar-ho abans que les dues obligacions coincideixin.'];\n    } else if(e.forma==='publica'){\n      dato='plazo'; sello='Cas per confirmar';\n      titulo='Ser administraci\u00f3 p\u00fablica no equival autom\u00e0ticament a estar exempt';\n      puntos=['Les entitats p\u00fabliques queden fora del VeriFactu en la mesura que actuen com a Administraci\u00f3 P\u00fablica. Aquest mat\u00eds \u00e9s el que decideix, i no cobreix tots els casos.',\n              'Si el servei de rec\u00e0rrega el gestiona un concessionari o una empresa privada en nom de l\\'ajuntament, aquella empresa no queda exempta per actuar en nom seu.',\n              '\u00c9s un cas que cal mirar un per un, amb el contracte de gesti\u00f3 al davant. Donar per fet que est\u00e0s exempt \u00e9s el risc m\u00e9s car d\\'aquesta normativa.'];\n    } else if(e.software==='manual'){\n      dato='fuera'; sello='Avui no t\\'aplica';\n      titulo='La facturaci\u00f3 completament manual queda fora del VeriFactu';\n      puntos=['El Reglament obliga qui emet factura amb un sistema inform\u00e0tic de facturaci\u00f3. Si de deb\u00f2 no en fas servir cap, no t\\'aplica.',\n              'Tan bon punt passis a facturar amb qualsevol programari, hi entres, i amb la data ja a sobre.',\n              'Un detall que es passa per alt: si la rec\u00e0rrega la factura una plataforma per tu, aquella facturaci\u00f3 ja \u00e9s inform\u00e0tica encara que tu no toquis res. Conv\u00e9 comprovar qui emet realment aquelles factures.'];\n    } else if(e.sii==='si' && e.integracion==='si'){\n      dato='cumple'; sello='Escenari 1';\n      titulo='Pots continuar facturant amb el teu sistema i Etecnic nom\u00e9s hi aporta les dades';\n      puntos=['Com que est\u00e0s en el SII, ja reportes les teves factures a l\\'Ag\u00e8ncia Tribut\u00e0ria en quatre dies naturals, excloent dissabtes, diumenges i festius nacionals, que \u00e9s una obligaci\u00f3 pr\u00e8via i diferent del VeriFactu.',\n              'El teu sistema ja est\u00e0 integrat amb l\\'API d\\'EVcharge, aix\u00ed que rep les dades de cada rec\u00e0rrega i la factura l\\'emets tu.',\n              'La previsi\u00f3 per als clients del SII \u00e9s que Etecnic actu\u00ef nom\u00e9s com a prove\u00efdor de dades per API i que el m\u00f2dul de facturaci\u00f3 d\\'EVcharge quedi desactivat. Conv\u00e9 confirmar-ho sobre el teu cas abans de la data.',\n              'Hi ha un risc detectat que conv\u00e9 revisar: les factures de mobilitat el\u00e8ctrica tamb\u00e9 cal reportar-les, i individualitzar-les per client final. Agrupar-les sota un CIF gen\u00e8ric \u00e9s un error freq\u00fcent.'];\n    } else if(e.sii==='si' && e.integracion==='no'){\n      dato='plazo'; sello='Escenari 2, per confirmar';\n      titulo='Et falta integrar el teu sistema de facturaci\u00f3 amb l\\'API d\\'EVcharge';\n      puntos=['La previsi\u00f3 per als clients del SII \u00e9s que continu\u00efs facturant tu i que Etecnic actu\u00ef nom\u00e9s com a prove\u00efdor de dades per API.',\n              'Avui el teu sistema no est\u00e0 connectat a l\\'API d\\'EVcharge: sense aquesta integraci\u00f3 no tens la dada de cada rec\u00e0rrega per poder facturar-la des del teu costat.',\n              'Aquesta via suposa, a m\u00e9s, que vulguis integrar-te. Si no \u00e9s el cas, la sortida \u00e9s una altra i conv\u00e9 parlar-ho abans de decidir.',\n              'Mateix av\u00eds que en el cas anterior: aquelles factures cal individualitzar-les per client final, no agrupar-les sota un CIF gen\u00e8ric.'];\n    } else if(e.quien==='etecnic'){\n      dato='plazo'; sello='Escenari 4';\n      titulo='Etecnic ja factura en nom teu, i per continuar cal la teva autoritzaci\u00f3 expressa';\n      puntos=['Des de l\\''+fecha+' aquelles factures han de portar registre amb hash, signatura electr\u00f2nica i codi QR, perqu\u00e8 a '+quienEs+' els aplica des d\\'aquella data.',\n              'Per emetre i reportar factures en nom teu davant l\\'Ag\u00e8ncia Tribut\u00e0ria, Etecnic necessita que li atorguis el Model 017. \u00c9s el tr\u00e0mit que desbloqueja tota la resta.',\n              'Amb aquella autoritzaci\u00f3, el m\u00f2dul assumir\u00e0 el cicle complet i tu nom\u00e9s registrar\u00e0s l\\'autofactura peri\u00f2dica.'];\n    } else if(e.quien==='propio'){\n      dato='plazo'; sello='Escenari 2 o 3';\n      titulo='Factures amb el teu propi sistema: la decisi\u00f3 \u00e9s integrar-lo o delegar-lo';\n      puntos=['Des de l\\''+fecha+' el teu programari ha de complir els sis requisits: registre de facturaci\u00f3 amb hash, inalterabilitat i tra\u00e7abilitat, enviament telem\u00e0tic en mode VeriFactu, signatura electr\u00f2nica amb certificat, codi QR a cada factura i formats admesos.',\n              'Pots continuar amb el teu sistema si l\\'integres amb l\\'API d\\'EVcharge per rebre les dades de cada rec\u00e0rrega.',\n              'O passar aquella facturaci\u00f3 al m\u00f2dul VeriFactu d\\'EVcharge, que requereix el Model 017. Quina de les dues conv\u00e9 dep\u00e8n del que ja tinguis muntat, i \u00e9s exactament el que val la pena mirar abans de decidir.'];\n    } else {\n      dato='incumple'; sello='Risc avui';\n      titulo='Amb rebuts no cobreixes l\\'obligaci\u00f3 d\\'emetre factura';\n      puntos=['Com a propietari del punt de rec\u00e0rrega est\u00e0s obligat a emetre factura simplificada a qui te la demani, amb independ\u00e8ncia del que et lliuri el teu prove\u00efdor de maquinari.',\n              '\u00c9s previsible que diversos fabricants optin per lliurar rebuts sense IVA per no ser considerats ells programari de facturaci\u00f3. Aix\u00f2 no trasllada l\\'obligaci\u00f3: es queda amb tu.',\n              'Sense un sistema que ho faci, hauries de donar d\\'alta cada rebut a m\u00e0 i emetre les factures una per una. Des de l\\''+fecha+' a m\u00e9s haurien de complir el VeriFactu.',\n              'La via prevista per a aquest cas \u00e9s l\\'escenari 3: facturar amb el m\u00f2dul VeriFactu d\\'EVcharge, que requereix la teva autoritzaci\u00f3 mitjan\u00e7ant el Model 017.'];\n    }\n\n    elResultado.dataset.estado=dato;\n    elDesenlace.hidden=false;\n    var lista=puntos.map(function(t){return '<li>'+t+'<\/li>';}).join('');\n    elResultado.innerHTML='<span class=\"sello\">'+sello+'<\/span><h3>'+titulo+'<\/h3><ul>'+lista+'<\/ul>';\n    prepararFormulario(dato);\n    \/\/ el veredicto y el formulario tienen que entrar en pantalla juntos\n    requestAnimationFrame(function(){ requestAnimationFrame(function(){\n      var barraAvance=document.getElementById('via');\n      encuadrar(barraAvance||document.getElementById('diagnostico')||elDesenlace,\n                document.getElementById('marcoZoho')||document.getElementById('cajaFormulario'),\n                barraAvance);\n    }); });\n  }\n\n  \/\/ ---- el formulario se adapta al resultado y guarda el diagn\u00f3stico ----\n  function prepararFormulario(dato){\n    var p=PERFILES[dato];\n    document.getElementById('formTitulo').textContent=p.titulo;\n    document.getElementById('formIntro').textContent=p.intro;\n    document.getElementById('botonEnviar').textContent=p.cta;\n    \/\/ el diagn\u00f3stico queda a la vista: el usuario ve qu\u00e9 se env\u00eda con sus datos\n    document.getElementById('recapFichas').innerHTML=camino.map(function(x){\n      return '<span><b>'+NODOS[x.clave].corto+'<\/b> '+x.etiqueta+'<\/span>';\n    }).join('');\n    if(MODO==='zoho'){\n      document.getElementById('formulario').hidden=true;\n      document.getElementById('marcoZoho').hidden=false;\n      var marco=document.getElementById('iframeZoho');\n      var destino=urlZoho(dato);\n      if(marco.getAttribute('src')!==destino) marco.setAttribute('src',destino);\n      if(DEPURAR) pintarDepuracion(destino);\n    }\n    document.getElementById('cajaFormulario').hidden=false;\n    document.getElementById('gracias').hidden=true;\n    document.getElementById('recogida').textContent='';\n    var barra=document.getElementById('barra');\n    document.getElementById('barraBoton').textContent=p.cta;\n    barra.dataset.ver='si';\n  }\n\n  \/* ===================================================================\n     C\u00d3MO SE RECOGE EL LEAD. Dos opciones, se elige aqu\u00ed.\n\n     'propio' \u2192 el formulario de esta p\u00e1gina env\u00eda a n8n, que crea el\n                Cliente Potencial en Zoho y avisa al comercial.\n     'zoho'   \u2192 se incrusta un formulario de Zoho Forms. El diagn\u00f3stico y\n                las UTMs viajan como par\u00e1metros de prefill en la URL.\n\n     ESTA P\u00c1GINA SALE CON 'zoho', pero mientras la URL del formulario siga\n     sin rellenar el propio c\u00f3digo se pasa solo al formulario nativo, para\n     que no se quede un iframe roto en pantalla.\n     =================================================================== *\/\n  var MODO='zoho';\n\n  \/* Ponlo en true mientras montas el formulario en Zoho: muestra un panel\n     con la URL exacta que se env\u00eda, para poder depurar el prefill. *\/\n  var DEPURAR=false;\n\n  \/\/ solo para MODO 'propio'\n  var WEBHOOK='https:\/\/n8n.etecnic.es\/webhook\/landing-verifactu';\n\n  \/* Solo para MODO 'zoho'. Los nombres de abajo NO son los t\u00edtulos de los\n     campos: son los ALIAS que se definen en Zoho Forms en\n     Configuraci\u00f3n > Prefill > Alias de campo. Si un alias no coincide,\n     ese dato llega vac\u00edo y no salta ning\u00fan error. *\/\n  var ZOHO={\n    url:'https:\/\/forms.zohopublic.com\/marketing351\/form\/VerifactuContactoLanding\/formperma\/P9RM_gkR_0AI9Bes3FiT7NX0NQsNfzR6rlrNOx-3oxs',\n    origen:'https:\/\/forms.zohopublic.com',   \/\/ para validar los postMessage\n    \/* IMPORTANTE, y es el error que cost\u00f3 m\u00e1s tiempo en la landing de AFIR:\n       deja en '' todo alias cuyo campo NO exista todav\u00eda en Zoho Forms.\n       Si se env\u00eda un par\u00e1metro que no corresponde a ning\u00fan campo, Zoho\n       descarta EN SILENCIO todo el prefill, no solo ese par\u00e1metro. *\/\n    campos:{\n      \/* El formulario de VeriFactu NO lleva campos ocultos: se decidi\u00f3 no\n         a\u00f1adir ni un campo m\u00e1s de los que ya tiene. As\u00ed que el diagn\u00f3stico\n         viaja dentro del campo \u00abMensaje\u00bb, que ya existe, prerrellenado.\n         El \u00fanico alias activo es ese. *\/\n      transcripcion:'Mensaje',\n      \/\/ los de abajo solo se rellenan si alg\u00fan d\u00eda se crea ese campo\n      resultado:'', camino:'', calificacion:'', prioridad:'',\n      origen:'', campana:'',\n      utm_source:'', utm_medium:'', utm_campaign:'', utm_content:'', utm_term:'',\n      idioma:''\n    },\n    \/* Sin campos ocultos no hay un campo por pregunta. Se deja vac\u00edo a\n       prop\u00f3sito: un alias vac\u00edo no se env\u00eda. *\/\n    preguntas:{},\n    \/\/ se manda como oculto para no pedirlo en el formulario\n    idioma:'Catal\u00e1n',  \/\/ en la versi\u00f3n catalana de la p\u00e1gina, 'Catal\u00e1n'\n    \/* Salto de l\u00ednea dentro del campo Mensaje. Si el campo de Zoho resultara\n       ser de una sola l\u00ednea, cambia esto por ' \u00b7 ' y se ver\u00e1 igual de bien. *\/\n    salto:'\\n'\n  };\n\n  \/* El texto que se prerrellena en el campo \u00abMensaje\u00bb del formulario de Zoho.\n     Corto a prop\u00f3sito: es lo que el lead va a ver escrito y puede editar, y\n     va delante de lo que \u00e9l escriba. *\/\n  function mensajeZoho(dato){\n    var s=ZOHO.salto;\n    var lineas=camino.map(function(x){ return NODOS[x.clave].corto+': '+x.etiqueta; });\n    return 'Diagn\u00f2stic que he fet al web:'+s+lineas.join(s)+s+\n           'Resultat: '+document.querySelector('#resultado h3').textContent+s+s;\n  }\n\n  \/\/ sin URL de formulario no se puede incrustar nada: se usa el nativo\n  if(MODO==='zoho' && ZOHO.url.indexOf('PEGA_AQUI')>-1){\n    MODO='propio';\n    console.warn('[Landing VeriFactu] falta la URL del formulario de Zoho. '+\n                 'Se muestra el formulario propio de la p\u00e1gina.');\n  }\n\n  function urlZoho(dato){\n    var p=PERFILES[dato], c=ZOHO.campos, q=[];\n    function add(campo,valor){ if(campo&&valor) q.push(encodeURIComponent(campo)+'='+encodeURIComponent(valor)); }\n    add(c.resultado, document.querySelector('#resultado h3').textContent);\n    add(c.camino, camino.map(function(x){return NODOS[x.clave].corto+': '+x.etiqueta;}).join(' \u00b7 '));\n    add(c.calificacion, p.calificacion);\n    add(c.prioridad, p.prioridad);\n    add(c.origen, 'Landing VeriFactu');\n    add(c.campana, utm.utm_campaign||'norm2027');\n    ['utm_source','utm_medium','utm_campaign','utm_content','utm_term'].forEach(function(k){add(c[k], utm[k]);});\n    \/\/ cada respuesta del \u00e1rbol a su propio campo\n    camino.forEach(function(x){ add(ZOHO.preguntas[x.clave], x.etiqueta); });\n    add(c.transcripcion, mensajeZoho(dato));\n    add(c.idioma, ZOHO.idioma);\n    return ZOHO.url+(ZOHO.url.indexOf('?')>-1?'&':'?')+q.join('&');\n  }\n\n  function mostrarGracias(p){\n    var g=document.getElementById('gracias');\n    g.innerHTML='<span class=\"sello\" style=\"background:var(--verde);color:#fff;\">Rebut<\/span>'+\n      '<h2>Gr\u00e0cies, ja ho tenim<\/h2>'+\n      '<p class=\"justificado\">Hem passat la teva consulta al comercial de la teva zona amb el diagn\u00f2stic que has fet, '+\n      'aix\u00ed que no l\\'haur\u00e0s de repetir. Et contactar\u00e0 '+(p.prioridad==='Alta'?'en les properes 24 a 48 hores':'aviat')+'.<\/p>'+\n      '<ul><li>Si vols avan\u00e7ar alguna cosa, escriu a <a href=\"mailto:sales@etecnic.es\">sales@etecnic.es<\/a> dient el nom de la teva empresa.<\/li>'+\n      '<li>Mentrestant, a les preguntes freq\u00fcents de sota tens el detall de cada obligaci\u00f3.<\/li><\/ul>';\n    g.hidden=false;\n    document.getElementById('cajaFormulario').hidden=true;\n    document.getElementById('barra').dataset.ver='no';\n    encuadrar(g, g);\n    \/\/ evento de conversi\u00f3n para anal\u00edtica\n    window.dataLayer=window.dataLayer||[];\n    window.dataLayer.push({event:'lead_verifactu', resultado:elResultado.dataset.estado, calificacion:p.calificacion});\n  }\n\n  function pintarDepuracion(destino){\n    var panel=document.getElementById('panelDepurar');\n    var caja=document.getElementById('depurarCuerpo');\n    if(!panel||!caja) return;\n    var q=new URLSearchParams(destino.split('?')[1]||'');\n    var filas='';\n    q.forEach(function(v,k){\n      filas+='<tr><th>'+k+'<\/th><td>'+(v||'<i>(vac\u00edo)<\/i>')+'<\/td><\/tr>';\n    });\n    if(!filas) filas='<tr><td colspan=\"2\"><b>No se est\u00e1 enviando ning\u00fan par\u00e1metro.<\/b> Eso apunta a la landing, no a Zoho.<\/td><\/tr>';\n    caja.innerHTML='<div class=\"interior\">'+\n      '<p>Estos son los alias y valores que la p\u00e1gina est\u00e1 mandando. Cada <b>alias<\/b> de la izquierda tiene que existir en Zoho Forms en Configuraci\u00f3n \u2192 Prefill \u2192 Alias de campo, escrito <b>exactamente igual<\/b>.<\/p>'+\n      '<table><tr><th>Alias<\/th><th>Valor<\/th><\/tr>'+filas+'<\/table>'+\n      '<p>URL completa, para pegarla en una pesta\u00f1a nueva y ver si el formulario se rellena:<\/p>'+\n      '<textarea rows=\"4\" readonly onclick=\"this.select()\">'+destino+'<\/textarea>'+\n      '<\/div>';\n    panel.hidden=false;\n  }\n\n  \/\/ ---- validaci\u00f3n en l\u00ednea: avisa al salir del campo, no al enviar ----\n  var REGLAS={\n    nombre:{msj:'Posa el teu nom per saber com adre\u00e7ar-nos a tu.', ok:function(v){return v.trim().length>1;}},\n    empresa:{msj:'De quina empresa o organisme ens escrius?', ok:function(v){return v.trim().length>1;}},\n    email:{msj:'Aquest correu electr\u00f2nic no sembla complet. Comprova que tingui arrova i domini.',\n           ok:function(v){return \/^[^@\\s]+@[^@\\s]+\\.[^@\\s]{2,}$\/.test(v.trim());}}\n  };\n\n  function revisar(campo,silencioso){\n    var el=document.getElementById(campo), regla=REGLAS[campo];\n    var aviso=document.getElementById('fallo-'+campo);\n    var bien=regla.ok(el.value);\n    if(bien || (silencioso && !el.value)){\n      el.classList.remove('malo'); el.removeAttribute('aria-invalid'); aviso.hidden=true;\n    } else {\n      el.classList.add('malo'); el.setAttribute('aria-invalid','true');\n      aviso.textContent=regla.msj; aviso.hidden=false;\n    }\n    return bien;\n  }\n\n  Object.keys(REGLAS).forEach(function(campo){\n    var el=document.getElementById(campo);\n    el.addEventListener('blur',function(){revisar(campo,true);});\n    el.addEventListener('input',function(){\n      if(el.classList.contains('malo')) revisar(campo,true);\n    });\n  });\n\n  document.getElementById('formulario').addEventListener('submit',function(ev){\n    ev.preventDefault();\n    var f=ev.target, aviso=document.getElementById('recogida'), boton=document.getElementById('botonEnviar');\n    aviso.className='recogida'; aviso.textContent='';\n\n    var valido=true, primerFallo=null;\n    Object.keys(REGLAS).forEach(function(campo){\n      if(!revisar(campo,false)){ valido=false; if(!primerFallo) primerFallo=campo; }\n    });\n    if(!valido){ document.getElementById(primerFallo).focus(); return; }\n    if(!f.rgpd.checked){\n      aviso.className='aviso-error';\n      aviso.textContent='Marca la casella de la pol\u00edtica de privacitat per poder enviar-ho.';\n      f.rgpd.focus(); return;\n    }\n\n    var puntos=f.querySelector('input[name=\"puntos\"]:checked');\n    var estado=elResultado.dataset.estado;\n    var p=PERFILES[estado];\n    var envio={\n      nombre:f.nombre.value.trim(), empresa:f.empresa.value.trim(), email:f.email.value.trim(),\n      telefono:f.telefono.value.trim(), provincia:f.provincia.value.trim(),\n      puntos_gestionados:puntos?puntos.value:'', mensaje:f.mensaje.value.trim(),\n      diagnostico:respuestas(),\n      respuestas_texto:etiquetadas(),\n      camino:camino.map(function(x){return NODOS[x.clave].corto+': '+x.etiqueta;}).join(' \u00b7 '),\n      transcripcion:transcripcion(),\n      resultado:estado, resultado_titulo:document.querySelector('#resultado h3').textContent,\n      calificacion:p.calificacion, prioridad:p.prioridad,\n      origen:'Landing VeriFactu', campana:utm.utm_campaign||'norm2027',\n      utm_source:utm.utm_source, utm_medium:utm.utm_medium, utm_campaign:utm.utm_campaign,\n      utm_content:utm.utm_content, utm_term:utm.utm_term,\n      pagina:location.href.split('?')[0], referrer:document.referrer||'',\n      consentimiento_rgpd:true,\n      consentimiento_texto:'Pol\u00edtica de privacidad aceptada en el formulario de la landing VeriFactu',\n      consentimiento_fecha:new Date().toISOString()\n    };\n\n    boton.disabled=true; boton.textContent='Enviant\u2026';\n\n    fetch(WEBHOOK,{method:'POST',headers:{'Content-Type':'application\/json'},body:JSON.stringify(envio)})\n      .then(function(r){ if(!r.ok) throw new Error('HTTP '+r.status); return r; })\n      .then(function(){ mostrarGracias(p); })\n      .catch(function(){\n        boton.disabled=false; boton.textContent=p.cta;\n        aviso.className='aviso-error';\n        aviso.textContent='No ho hem pogut enviar. Torna-ho a provar en un moment o escriu-nos a sales@etecnic.es i t\\'atenem igualment.';\n        console.warn('[Landing VeriFactu] fall\u00f3 el env\u00edo. Payload:', envio);\n      });\n  });\n\n  \/* ---- Zoho Forms avisa del env\u00edo por postMessage (Compartir > Insertar >\n     Google Tag Manager & Custom Tracking, hay que activarlo all\u00ed).\n     As\u00ed la conversi\u00f3n se mide sin necesidad de redirigir a una p\u00e1gina de gracias. ---- *\/\n  window.addEventListener('message',function(ev){\n    if(MODO!=='zoho') return;\n    if(ev.origin!==ZOHO.origen) return;   \/\/ no aceptar mensajes de cualquier sitio\n    console.log('[Landing VeriFactu] mensaje de Zoho Forms:', ev.data);\n    var d=ev.data, texto=(typeof d==='string')?d:JSON.stringify(d||'');\n    \/\/ Zoho no documenta el contenido exacto: reconocemos el env\u00edo de forma laxa\n    if(\/submit|success|thank\/i.test(texto)){\n      var estado=elResultado.dataset.estado;\n      if(estado && PERFILES[estado]) mostrarGracias(PERFILES[estado]);\n    }\n  },false);\n\n  document.getElementById('barraBoton').addEventListener('click',function(){\n    var caja=document.getElementById('cajaFormulario');\n    encuadrar(caja, caja);\n    setTimeout(function(){document.getElementById('nombre').focus({preventScroll:true});},420);\n  });\n\n  \/\/ el bot\u00f3n de la portada baja al diagn\u00f3stico\n  (function(){\n    var b=document.getElementById('irDiagnostico');\n    if(!b) return;\n    b.addEventListener('click',function(ev){\n      ev.preventDefault();\n      encuadrar(document.getElementById('diagnostico'));\n    });\n  })();\n\n  \/* Las dos imagenes de la portada se ocultan solas si no hay URL o si no\n     cargan, cada una por separado. Si no queda ninguna, se va la figura. *\/\n  (function(){\n    var fig=document.getElementById('figuraLogo');\n    if(!fig) return;\n    function puesta(img){\n      var s=img&&img.getAttribute('src');\n      return !!s && s.indexOf('PEGA_AQUI')===-1;\n    }\n    function repasar(){\n      var vivas=fig.querySelectorAll('.marco-app:not([hidden]), .marco-logo:not([hidden])');\n      fig.hidden = vivas.length===0;\n    }\n    [['imgApp','marcoApp'],['imgLogo',null]].forEach(function(par){\n      var img=document.getElementById(par[0]);\n      if(!img) return;\n      var caja=par[1]?document.getElementById(par[1]):img.parentNode;\n      if(!caja) return;\n      if(!puesta(img)){ caja.hidden=true; return; }\n      caja.hidden=false;\n      img.addEventListener('error',function(){ caja.hidden=true; repasar(); });\n      img.addEventListener('load',repasar);\n    });\n    repasar();\n  })();\n\n  render();\n})();\n<\/script>\n<\/div><\/div><\/div><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":261,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"class_list":["post-32179","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>VeriFactu en punts de rec\u00e0rrega: qu\u00e8 t&#039;obliga i quan<\/title>\n<meta name=\"description\" content=\"Societats des de l&#039;1 de gener de 2027 i aut\u00f2noms des de l&#039;1 de juliol. Comprova en un minut com t&#039;afecta el VeriFactu si factures rec\u00e0rregues.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/\" \/>\n<meta property=\"og:locale\" content=\"ca_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"T&#039;obliga el VeriFactu si tens punts de rec\u00e0rrega?\" \/>\n<meta property=\"og:description\" content=\"Registre de facturaci\u00f3, signatura electr\u00f2nica i codi QR a cada factura. Cinc preguntes i saps en quin escenari est\u00e0s.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/\" \/>\n<meta property=\"og:site_name\" content=\"Etecnic - Delivering End-to-end charging solution for electric vehicles\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/etecnic?fref=ts%2f\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-07T10:08:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/etecnic.es\/wp-content\/uploads\/2026\/09\/og-verifactu-ca-1200x630-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@etecnic\" \/>\n<meta name=\"twitter:label1\" content=\"Temps estimat de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"38 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/etecnic.es\\\/ca\\\/verifactu-facturacio-punts-de-recarrega\\\/\",\"url\":\"https:\\\/\\\/etecnic.es\\\/ca\\\/verifactu-facturacio-punts-de-recarrega\\\/\",\"name\":\"VeriFactu en punts de rec\u00e0rrega: qu\u00e8 t'obliga i quan\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/etecnic.es\\\/#website\"},\"datePublished\":\"2026-09-03T10:49:13+00:00\",\"dateModified\":\"2026-09-07T10:08:37+00:00\",\"description\":\"Societats des de l'1 de gener de 2027 i aut\u00f2noms des de l'1 de juliol. Comprova en un minut com t'afecta el VeriFactu si factures rec\u00e0rregues.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/etecnic.es\\\/ca\\\/verifactu-facturacio-punts-de-recarrega\\\/#breadcrumb\"},\"inLanguage\":\"ca\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/etecnic.es\\\/ca\\\/verifactu-facturacio-punts-de-recarrega\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/etecnic.es\\\/ca\\\/verifactu-facturacio-punts-de-recarrega\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/etecnic.es\\\/ca\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Verifactu Landing &#8211; Cat\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/etecnic.es\\\/#website\",\"url\":\"https:\\\/\\\/etecnic.es\\\/\",\"name\":\"Etecnic - Delivering End-to-end charging solution for electric vehicles\",\"description\":\"EVcharge is the software platform that allows you to manage and operate your smart charging points to scale your business. Comprehensive control software and App solution.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/etecnic.es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ca\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"VeriFactu en punts de rec\u00e0rrega: qu\u00e8 t'obliga i quan","description":"Societats des de l'1 de gener de 2027 i aut\u00f2noms des de l'1 de juliol. Comprova en un minut com t'afecta el VeriFactu si factures rec\u00e0rregues.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/","og_locale":"ca_ES","og_type":"article","og_title":"T'obliga el VeriFactu si tens punts de rec\u00e0rrega?","og_description":"Registre de facturaci\u00f3, signatura electr\u00f2nica i codi QR a cada factura. Cinc preguntes i saps en quin escenari est\u00e0s.","og_url":"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/","og_site_name":"Etecnic - Delivering End-to-end charging solution for electric vehicles","article_publisher":"https:\/\/www.facebook.com\/etecnic?fref=ts%2f","article_modified_time":"2026-09-07T10:08:37+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/etecnic.es\/wp-content\/uploads\/2026\/09\/og-verifactu-ca-1200x630-1.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_site":"@etecnic","twitter_misc":{"Temps estimat de lectura":"38 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/","url":"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/","name":"VeriFactu en punts de rec\u00e0rrega: qu\u00e8 t'obliga i quan","isPartOf":{"@id":"https:\/\/etecnic.es\/#website"},"datePublished":"2026-09-03T10:49:13+00:00","dateModified":"2026-09-07T10:08:37+00:00","description":"Societats des de l'1 de gener de 2027 i aut\u00f2noms des de l'1 de juliol. Comprova en un minut com t'afecta el VeriFactu si factures rec\u00e0rregues.","breadcrumb":{"@id":"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/#breadcrumb"},"inLanguage":"ca","potentialAction":[{"@type":"ReadAction","target":["https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/etecnic.es\/ca\/verifactu-facturacio-punts-de-recarrega\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/etecnic.es\/ca\/"},{"@type":"ListItem","position":2,"name":"Verifactu Landing &#8211; Cat"}]},{"@type":"WebSite","@id":"https:\/\/etecnic.es\/#website","url":"https:\/\/etecnic.es\/","name":"Etecnic - Delivering End-to-end charging solution for electric vehicles","description":"EVcharge is the software platform that allows you to manage and operate your smart charging points to scale your business. Comprehensive control software and App solution.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/etecnic.es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ca"}]}},"_links":{"self":[{"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/pages\/32179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/users\/261"}],"replies":[{"embeddable":true,"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/comments?post=32179"}],"version-history":[{"count":5,"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/pages\/32179\/revisions"}],"predecessor-version":[{"id":32207,"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/pages\/32179\/revisions\/32207"}],"wp:attachment":[{"href":"https:\/\/etecnic.es\/ca\/wp-json\/wp\/v2\/media?parent=32179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}