<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="atom.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://wiki.restapro.es/ca/changelog</id>
    <title>RestaPro changelog</title>
    <updated>2026-05-04T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://wiki.restapro.es/ca/changelog"/>
    <subtitle>Novedades y mejoras del producto</subtitle>
    <icon>https://wiki.restapro.es/ca/favicon.svg</icon>
    <entry>
        <title type="html"><![CDATA[Notes internes en clients, filtre d'al·lèrgens i aquesta wiki]]></title>
        <id>https://wiki.restapro.es/ca/changelog/notas-internas-alergenos-wiki</id>
        <link href="https://wiki.restapro.es/ca/changelog/notas-internas-alergenos-wiki"/>
        <updated>2026-05-04T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Notes privades en cada client, filtre per al·lèrgens a la carta pública i l'obertura de wiki.restapro.es amb tota la documentació.]]></summary>
        <content type="html"><![CDATA[<p>Lot de poliment del CRM, de la carta pública i un anunci que t'afecta directament: <strong>wiki.restapro.es</strong> ja està oberta.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="notes-internes-en-clients">Notes internes en clients<a href="https://wiki.restapro.es/ca/changelog/notas-internas-alergenos-wiki#notes-internes-en-clients" class="hash-link" aria-label="Enllaç directe a Notes internes en clients" title="Enllaç directe a Notes internes en clients" translate="no">​</a></h2>
<p>A la fitxa de cada client del CRM hi ha un camp <strong>Notes internes</strong>. Només el veus tu i el teu equip, mai el client. Serveix per guardar:</p>
<ul>
<li class="">Al·lèrgies i preferències ("vi negre criança, sense postre").</li>
<li class="">Avisos ("paga sempre el pare, no la dona").</li>
<li class="">Context ("VIP del barri, atendre personalment").</li>
</ul>
<p>Apareix a la card del client a <strong>Servei en directe</strong> i a la pantalla d'edició de reserva, així que es veu abans que arribi.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="filtre-per-allèrgens-a-la-carta-pública">Filtre per al·lèrgens a la carta pública<a href="https://wiki.restapro.es/ca/changelog/notas-internas-alergenos-wiki#filtre-per-all%C3%A8rgens-a-la-carta-p%C3%BAblica" class="hash-link" aria-label="Enllaç directe a Filtre per al·lèrgens a la carta pública" title="Enllaç directe a Filtre per al·lèrgens a la carta pública" translate="no">​</a></h2>
<p>Els teus clients poden filtrar la carta per al·lèrgens (gluten, lactosa, fruits secs, marisc, ou...) directament a la pàgina pública. Tu els marques a cada plat en editar-lo a la carta. És opcional: si no marques res, el filtre no apareix.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="wiki-a-wikirestaproes">Wiki a wiki.restapro.es<a href="https://wiki.restapro.es/ca/changelog/notas-internas-alergenos-wiki#wiki-a-wikirestaproes" class="hash-link" aria-label="Enllaç directe a Wiki a wiki.restapro.es" title="Enllaç directe a Wiki a wiki.restapro.es" translate="no">​</a></h2>
<p>L'estàs llegint ara mateix. És la nostra base de coneixement pública amb:</p>
<ul>
<li class=""><strong>Guies pas a pas</strong> de cada funció del producte, escrites per a hostalers (sense argot tècnic).</li>
<li class=""><strong>FAQ</strong> amb les 23 preguntes més freqüents.</li>
<li class=""><strong>Canvis i novetats</strong> (aquest changelog).</li>
<li class=""><strong>Cerca</strong> que fa match amb tot el contingut.</li>
</ul>
<p>I el botó <strong>Ajuda</strong> del sidebar de l'app obre directament aquesta wiki en una pestanya nova. Pinche, l'assistent IA, també la fa servir: si li preguntes "com faig X?", busca aquí i et torna enllaços.</p>
<p>Més a la <a class="" href="https://wiki.restapro.es/ca/">introducció</a> de la wiki.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Pausa de servei en directe]]></title>
        <id>https://wiki.restapro.es/ca/changelog/pausa-servicio-en-vivo</id>
        <link href="https://wiki.restapro.es/ca/changelog/pausa-servicio-en-vivo"/>
        <updated>2026-05-04T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Tanca reserves en línia d'un servei (dinar, sopar, esmorzar) en una data sense tocar els teus horaris.]]></summary>
        <content type="html"><![CDATA[<p>A petició d'un hostaler ("vénen walk-ins, no vull més reserves en línia a l'hora de dinar, però no vull entrar a configuració"), publiquem la <strong>pausa de servei en directe</strong>.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="què-fa">Què fa<a href="https://wiki.restapro.es/ca/changelog/pausa-servicio-en-vivo#qu%C3%A8-fa" class="hash-link" aria-label="Enllaç directe a Què fa" title="Enllaç directe a Què fa" translate="no">​</a></h2>
<p>Des de <strong>Reserves → Pausar reserves en línia</strong> pots bloquejar reserves noves per a un tram concret (esmorzar, dinar, sopar o tot el dia) en una data. La pausa <strong>caduca sola en canviar el dia</strong>: si no la reprens, demà el teu web torna a acceptar reserves automàticament.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="per-què-importa">Per què importa<a href="https://wiki.restapro.es/ca/changelog/pausa-servicio-en-vivo#per-qu%C3%A8-importa" class="hash-link" aria-label="Enllaç directe a Per què importa" title="Enllaç directe a Per què importa" translate="no">​</a></h2>
<ul>
<li class="">No toques horaris ni configuració. La configuració permanent queda intacta.</li>
<li class="">L'hostaler continua creant reserves internes (walk-ins, trucades, VIPs) durant la pausa.</li>
<li class="">El client veu un missatge clar: <em>"Aforament complet, t'esperem sense reserva"</em> amb botó per <strong>trucar al restaurant</strong>.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="diferència-amb-el-tancament-prolongat">Diferència amb el tancament prolongat<a href="https://wiki.restapro.es/ca/changelog/pausa-servicio-en-vivo#difer%C3%A8ncia-amb-el-tancament-prolongat" class="hash-link" aria-label="Enllaç directe a Diferència amb el tancament prolongat" title="Enllaç directe a Diferència amb el tancament prolongat" translate="no">​</a></h2>
<table><thead><tr><th></th><th>Pausa de servei</th><th>Tancament prolongat</th></tr></thead><tbody><tr><td>On</td><td>Reserves → Pausar</td><td>Servei en directe → toggle</td></tr><tr><td>Abast</td><td>Un servei en una data</td><td>Tot el web indefinidament</td></tr><tr><td>Caduca</td><td>Sí, en canviar el dia</td><td>No, cal reprendre a mà</td></tr></tbody></table>
<p>Més detall a la <a class="" href="https://wiki.restapro.es/ca/operativa-diaria/pausa-servicio">guia completa de pausa de servei</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Onada de millores internes: seguretat, rendiment i resiliència]]></title>
        <id>https://wiki.restapro.es/ca/changelog/ola-de-mejoras-internas</id>
        <link href="https://wiki.restapro.es/ca/changelog/ola-de-mejoras-internas"/>
        <updated>2026-04-30T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Hardening de seguretat (XSS, leaks, idempotència), rendiment a admin i millores de resiliència que no es veuen però es noten.]]></summary>
        <content type="html"><![CDATA[<p>Aquesta setmana ha estat més de treure deute que d'afegir coses noves, però el resultat és que l'app se sent més sòlida. Resum perquè sàpigues on hem millorat encara que no ho hagis vist amb l'ull.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="seguretat">Seguretat<a href="https://wiki.restapro.es/ca/changelog/ola-de-mejoras-internas#seguretat" class="hash-link" aria-label="Enllaç directe a Seguretat" title="Enllaç directe a Seguretat" translate="no">​</a></h2>
<ul>
<li class=""><strong>Escapat de JSON-LD</strong> a la carta pública per evitar injeccions des de noms de plat exòtics.</li>
<li class=""><strong>Validació d'URLs externes</strong> abans de mostrar-les a les públiques.</li>
<li class=""><strong>Pujada d'imatges</strong> ara rebutja SVGs i limita la mida a 5 MB. Abans s'hi podia colar un SVG amb script.</li>
<li class=""><strong>Token d'edició pública</strong> signat amb HMAC: ningú no pot editar la reserva d'algú altre encara que endevini l'ID.</li>
<li class=""><strong>Webhook de Stripe idempotent</strong>: si el mateix esdeveniment arriba dues vegades (Stripe de vegades reintenta), només s'aplica un cop.</li>
<li class=""><strong>Rate-limit i access guard</strong> en sis funcions de Gemini perquè no se n'abusi del cost.</li>
<li class=""><strong>Rols</strong>: <code>workspace-member-upsert</code> ja no permet escalar a <code>owner</code> des d'un rol inferior.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="rendiment">Rendiment<a href="https://wiki.restapro.es/ca/changelog/ola-de-mejoras-internas#rendiment" class="hash-link" aria-label="Enllaç directe a Rendiment" title="Enllaç directe a Rendiment" translate="no">​</a></h2>
<ul>
<li class=""><strong>Admin overview</strong> ha deixat de fer N+1 en llistar restaurants (era una query per cadascun; ara una de sola).</li>
<li class=""><strong>Sentry lazy-loaded</strong>: només es carrega quan cal, no a cada visita a la home pública.</li>
<li class=""><strong><code>date-fns</code> per bundle petit</strong> en lloc del paquet sencer, estalvia uns 80 KB a cada càrrega.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="resiliència">Resiliència<a href="https://wiki.restapro.es/ca/changelog/ola-de-mejoras-internas#resili%C3%A8ncia" class="hash-link" aria-label="Enllaç directe a Resiliència" title="Enllaç directe a Resiliència" translate="no">​</a></h2>
<ul>
<li class=""><strong>Auto-reload del frontend</strong> si falla el preload d'un chunk després d'un deploy: l'usuari no veu pantalla trencada, recarrega sola.</li>
<li class=""><strong>Snapshot de <code>dist/</code></strong> i script de <strong>rollback</strong> ràpid a la versió anterior si un deploy ho espatlla.</li>
<li class=""><strong>Recordatoris</strong> ara respecten la <strong>zona horària</strong> del restaurant (abans s'enviaven en UTC i a vegades s'avançaven una hora).</li>
<li class=""><strong>Cron d'estadístiques públiques</strong> reagendat per no trepitjar-se amb els backups.</li>
</ul>
<p>Si alguna cosa anava lenta o rara i notes que ja no, era això.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Onboarding per a esdeveniments purs i landing redissenyada]]></title>
        <id>https://wiki.restapro.es/ca/changelog/onboarding-eventos-y-landing</id>
        <link href="https://wiki.restapro.es/ca/changelog/onboarding-eventos-y-landing"/>
        <updated>2026-04-29T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Workspace events-only per a negocis que només gestionen esdeveniments privats. Landing nova amb comptador real i comparativa contra TheFork.]]></summary>
        <content type="html"><![CDATA[<p>Dos llançaments pensant en perfils diferents: el restaurant d'esdeveniments privats purs, i l'hostaler que entra per primer cop al web públic.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="workspace-només-esdeveniments">Workspace "només esdeveniments"<a href="https://wiki.restapro.es/ca/changelog/onboarding-eventos-y-landing#workspace-nom%C3%A9s-esdeveniments" class="hash-link" aria-label="Enllaç directe a Workspace &quot;només esdeveniments&quot;" title="Enllaç directe a Workspace &quot;només esdeveniments&quot;" translate="no">​</a></h2>
<p>No tots els negocis necessiten reserves estàndard. Alguns clients (càtering, salons de bodes, espais d'esdeveniments privats) gestionen <strong>només esdeveniments de grup</strong>. Per a ells hem creat un <strong>mode workspace events-only</strong>:</p>
<ul>
<li class="">A l'alta, trien "Només gestiono esdeveniments" en lloc del flux de reserves.</li>
<li class="">Les pantalles de <strong>Servei en directe</strong> i <strong>Reserves</strong> s'oculten.</li>
<li class="">Al seu lloc, <strong>Esdeveniments de grup</strong> passa a ser la pantalla principal.</li>
<li class="">Les plantilles i els correus s'adapten al llenguatge d'esdeveniments (pressupost, avançament, data de l'esdeveniment, nombre de comensals previstos).</li>
</ul>
<p>Si el teu negoci encaixa amb això, escriu-nos a <code>support@restapro.es</code> i te l'activem. No és un toggle públic encara: preferim parlar amb cada client per ajustar-ho bé.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="landing-redissenyada">Landing redissenyada<a href="https://wiki.restapro.es/ca/changelog/onboarding-eventos-y-landing#landing-redissenyada" class="hash-link" aria-label="Enllaç directe a Landing redissenyada" title="Enllaç directe a Landing redissenyada" translate="no">​</a></h2>
<p>Hem reescrit <strong><code>https://www.restapro.es</code></strong> sencera:</p>
<ul>
<li class=""><strong>Comptador de reserves reals</strong> en lloc de números inventats.</li>
<li class=""><strong>Comparativa transparent</strong> amb TheFork: preus, comissió, què fa millor cadascun.</li>
<li class=""><strong>Demo en directe</strong> que ensenya la pantalla de servei sense demanar registre.</li>
<li class=""><strong>Layout més ample (1536px)</strong> i blocs condensats: es llegeix millor en monitor gran sense perdre densitat.</li>
</ul>
<p>Si portaves algú al web per explicar-li RestaPro, ara la conversa s'escurça: hi ha menys argot i més captures reals.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Adeu TheFork + cinc sprints de UX al servei en directe]]></title>
        <id>https://wiki.restapro.es/ca/changelog/adios-thefork-sprints-ux</id>
        <link href="https://wiki.restapro.es/ca/changelog/adios-thefork-sprints-ux"/>
        <updated>2026-04-28T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Eliminem la integració amb TheFork i dediquem cinc sprints seguits a polir l'experiència del servei en directe.]]></summary>
        <content type="html"><![CDATA[<p>Aquesta setmana ha tocat onada gran: hem retirat la integració amb <strong>TheFork</strong> i hem passat cinc sprints seguits polint la pantalla de <strong>Servei en directe</strong> punt per punt.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="per-què-hem-tret-thefork">Per què hem tret TheFork<a href="https://wiki.restapro.es/ca/changelog/adios-thefork-sprints-ux#per-qu%C3%A8-hem-tret-thefork" class="hash-link" aria-label="Enllaç directe a Per què hem tret TheFork" title="Enllaç directe a Per què hem tret TheFork" translate="no">​</a></h2>
<p>Ho hem après per les males: quan RestaPro era qui reservava, les dades eren consistents i els correus arribaven a temps. Quan una reserva venia de TheFork, hi havia <strong>doble font de veritat</strong>: el sincronitzat es desfasava, els recordatoris es duplicaven, i els hostalers rebien queixes de clients que rebien dues confirmacions del mateix sopar.</p>
<p>La decisió va ser: o ho arreglàvem a fons (setmanes de feina) o ho retiràvem. Vam optar per retirar-ho i simplificar. Si necessites TheFork, continuem demanant als clients que el portin en paral·lel i el reflecteixin com a walk-in a RestaPro.</p>
<p>Si encara tenies un restaurant amb TheFork connectat, les reserves passades es queden a l'històric i les noves deixen de sincronitzar-se. Ho avisem als correus i per toast al backoffice.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="cinc-sprints-de-ux-al-servei-en-directe">Cinc sprints de UX al servei en directe<a href="https://wiki.restapro.es/ca/changelog/adios-thefork-sprints-ux#cinc-sprints-de-ux-al-servei-en-directe" class="hash-link" aria-label="Enllaç directe a Cinc sprints de UX al servei en directe" title="Enllaç directe a Cinc sprints de UX al servei en directe" translate="no">​</a></h2>
<p>Després de llançar <strong>Servei en directe</strong>, hi vam dedicar sprints setmanals per polir el que es nota fent-lo servir de debò:</p>
<ul>
<li class=""><strong>Sprint 1.</strong> Quick wins: tooltips, dreceres de teclat, layout responsive en tauleta.</li>
<li class=""><strong>Sprint 2.</strong> UX general: revisió de copy, separadors clars, pesos visuals.</li>
<li class=""><strong>Sprint 3.</strong> Eficiència operativa: menys clics per reassignar, accessos ràpids a "marcar arribada", ressaltat de taules crítiques.</li>
<li class=""><strong>Sprint 4.</strong> Context del client: badge <strong>VIP</strong> i comptador de <strong>no-shows</strong> visibles d'un cop d'ull.</li>
<li class=""><strong>Sprint 5.</strong> Vista TV (mode exposat a sala) i <strong>so</strong> en entrar una reserva nova.</li>
</ul>
<p>Si fa temps que no obres aquesta pantalla, prova-la ara. És una altra cosa.</p>
<p>Més a la <a class="" href="https://wiki.restapro.es/ca/operativa-diaria/reservas">guia de reserves</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Edició pública de reserves + alertes a diversos correus]]></title>
        <id>https://wiki.restapro.es/ca/changelog/edicion-publica-y-alertas-multiples</id>
        <link href="https://wiki.restapro.es/ca/changelog/edicion-publica-y-alertas-multiples"/>
        <updated>2026-04-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[El client edita o cancel·la la reserva des del correu sense trucar. El restaurant rep alertes a diverses bústies en temps real.]]></summary>
        <content type="html"><![CDATA[<p>Dues petites millores que redueixen soroll a banda i banda: el client no truca per canviar l'hora, i el restaurant no s'assabenta tard d'una reserva nova per estar mirant un altre correu.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="el-client-edita-la-reserva-des-del-correu">El client edita la reserva des del correu<a href="https://wiki.restapro.es/ca/changelog/edicion-publica-y-alertas-multiples#el-client-edita-la-reserva-des-del-correu" class="hash-link" aria-label="Enllaç directe a El client edita la reserva des del correu" title="Enllaç directe a El client edita la reserva des del correu" translate="no">​</a></h2>
<p>El correu de confirmació que reben els teus clients ara porta un enllaç <strong>"Editar o cancel·lar la meva reserva"</strong>. En prémer-lo:</p>
<ul>
<li class="">Arriba a una pantalla simple al teu domini públic.</li>
<li class="">Pot canviar l'hora dins dels slots disponibles, o cancel·lar.</li>
<li class="">No cal crear compte ni recordar contrasenya.</li>
</ul>
<p>L'enllaç està signat amb un token únic: ningú més no pot tocar la reserva encara que sàpiga l'ID. Ho cuidem per si de cas.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="alertes-a-diversos-correus">Alertes a diversos correus<a href="https://wiki.restapro.es/ca/changelog/edicion-publica-y-alertas-multiples#alertes-a-diversos-correus" class="hash-link" aria-label="Enllaç directe a Alertes a diversos correus" title="Enllaç directe a Alertes a diversos correus" translate="no">​</a></h2>
<p>Fins ara, les alertes de reserva nova anaven a un únic correu. Ara pots definir <strong>diversos destinataris</strong> a <strong>Configuració → Alertes</strong>:</p>
<ul>
<li class="">Tu (<code>tu@restaurant.com</code>)</li>
<li class="">El cap de sala (<code>sala@restaurant.com</code>)</li>
<li class="">El que vulguis (un Slack via webhook a correu, un grup, etc.)</li>
</ul>
<p>Si en configures més d'un, tots reben l'alerta alhora.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="toast-en-temps-real">Toast en temps real<a href="https://wiki.restapro.es/ca/changelog/edicion-publica-y-alertas-multiples#toast-en-temps-real" class="hash-link" aria-label="Enllaç directe a Toast en temps real" title="Enllaç directe a Toast en temps real" translate="no">​</a></h2>
<p>Si tens el backoffice obert, quan entra una reserva online apareix un <strong>toast a la cantonada</strong> ("Nova reserva: 2 persones, 21:00"). Sense recarregar, sense esperar que sincronitzi. És realtime via Supabase, així que és instantani.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="detecció-de-duplicats">Detecció de duplicats<a href="https://wiki.restapro.es/ca/changelog/edicion-publica-y-alertas-multiples#detecci%C3%B3-de-duplicats" class="hash-link" aria-label="Enllaç directe a Detecció de duplicats" title="Enllaç directe a Detecció de duplicats" translate="no">​</a></h2>
<p>Si el mateix client prova de reservar dues vegades per al mateix dia (típic quan el formulari s'envia dos cops o un missatge queda esperant xarxa), RestaPro ho detecta i avisa abans de ficar una reserva duplicada a la BD. El backoffice també ho assenyala.</p>
<p>Més a la <a class="" href="https://wiki.restapro.es/ca/operativa-diaria/reservas">guia de reserves</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Servei en directe: la pantalla del cap de sala]]></title>
        <id>https://wiki.restapro.es/ca/changelog/servicio-en-vivo</id>
        <link href="https://wiki.restapro.es/ca/changelog/servicio-en-vivo"/>
        <updated>2026-04-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Vista en temps real del teu restaurant amb drag and drop de reserves a taules, walk-in flexible, banner de servei i bloquejos per taula.]]></summary>
        <content type="html"><![CDATA[<p>És la pantalla en què portem mesos pensant: una vista única en temps real per gestionar el servei sense saltar entre menús. Es diu <strong>Servei en directe</strong> i viu a <code>/app/local</code>.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="què-fa">Què fa<a href="https://wiki.restapro.es/ca/changelog/servicio-en-vivo#qu%C3%A8-fa" class="hash-link" aria-label="Enllaç directe a Què fa" title="Enllaç directe a Què fa" translate="no">​</a></h2>
<ul>
<li class=""><strong>Plànol de taules</strong> amb l'estat de cadascuna al minut: lliure, ocupada, walk-in, bloquejada.</li>
<li class=""><strong>Drag &amp; drop</strong> per reassignar reserves a taules mentre passa el servei. Si no hi ha capacitat, el sistema ho avisa abans de deixar anar.</li>
<li class=""><strong>Walk-in flexible</strong>: el botó gran per asseure gent sense reserva, ajustant la capacitat sobre la marxa.</li>
<li class=""><strong>Banner de servei</strong> a la capçalera amb un resum de com va el dia (ocupació, pròximes reserves, alertes).</li>
<li class=""><strong>Bloqueig de taules</strong> amb motiu: "taula trencada", "reservada per a grup a les 22:00", "aniversari del cap".</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="per-a-qui">Per a qui<a href="https://wiki.restapro.es/ca/changelog/servicio-en-vivo#per-a-qui" class="hash-link" aria-label="Enllaç directe a Per a qui" title="Enllaç directe a Per a qui" translate="no">​</a></h2>
<p>Per al <strong>cap de sala</strong> i l'<strong>encarregat</strong>. És la pantalla que tenen oberta a la tauleta darrere de la barra durant tot el servei. No té text tècnic, no requereix formació: si has treballat en sala, ho entens a la primera.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="com-encaixa-amb-la-resta">Com encaixa amb la resta<a href="https://wiki.restapro.es/ca/changelog/servicio-en-vivo#com-encaixa-amb-la-resta" class="hash-link" aria-label="Enllaç directe a Com encaixa amb la resta" title="Enllaç directe a Com encaixa amb la resta" translate="no">​</a></h2>
<ul>
<li class=""><strong>Reserves</strong> continua sent on fas gestió de fons (crear, editar, cancel·lar).</li>
<li class=""><strong>Servei en directe</strong> és on <strong>operes</strong> durant el torn.</li>
<li class="">Les dues pantalles miren la mateixa base de dades en temps real, així que no hi ha desincronització.</li>
</ul>
<p>Més a <a class="" href="https://wiki.restapro.es/ca/operativa-diaria/floor-plans">floor plans</a> i a la <a class="" href="https://wiki.restapro.es/ca/operativa-diaria/reservas">guia de reserves</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Esmorzar com a tram + slots fins a la darrera reserva]]></title>
        <id>https://wiki.restapro.es/ca/changelog/desayuno-y-slots</id>
        <link href="https://wiki.restapro.es/ca/changelog/desayuno-y-slots"/>
        <updated>2026-04-23T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[L'esmorzar deixa de ser un cas a part i es gestiona com la resta de serveis. Els slots de reserva arriben fins a l'última hora configurada, no abans.]]></summary>
        <content type="html"><![CDATA[<p>Dos arranjaments petits però demanats per cafeteries i locals amb servei d'esmorzars: l'horari de matí ja no és ciutadà de segona, i els slots de reserva no es tallen abans d'hora.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="esmorzar-com-a-tram-de-servei">Esmorzar com a tram de servei<a href="https://wiki.restapro.es/ca/changelog/desayuno-y-slots#esmorzar-com-a-tram-de-servei" class="hash-link" aria-label="Enllaç directe a Esmorzar com a tram de servei" title="Enllaç directe a Esmorzar com a tram de servei" translate="no">​</a></h2>
<p>Fins ara els trams eren <strong>dinar</strong> i <strong>sopar</strong>. Si el teu negoci obre per a esmorzars, no hi havia manera neta de separar el servei matinal de la resta. Ara <strong>esmorzar</strong> és un tram més:</p>
<ul>
<li class="">L'actives a <strong>Configuració → Horaris</strong> marcant la franja (típicament 8:00–12:00).</li>
<li class="">Té la seva pròpia configuració (capacitat, slots, taules assignades).</li>
<li class="">Les <strong>reserves en línia</strong> el mostren com a tram separat a la pàgina pública.</li>
<li class="">Els <strong>correus</strong> i <strong>automatitzacions</strong> poden filtrar per tram: "envia promo només a clients d'esmorzar", per exemple.</li>
</ul>
<p>Si el teu restaurant fa esmorzars, ja els pots separar del dinar sense trampes.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="slots-fins-a-lúltima-reserva-configurada">Slots fins a l'última reserva configurada<a href="https://wiki.restapro.es/ca/changelog/desayuno-y-slots#slots-fins-a-l%C3%BAltima-reserva-configurada" class="hash-link" aria-label="Enllaç directe a Slots fins a l'última reserva configurada" title="Enllaç directe a Slots fins a l'última reserva configurada" translate="no">​</a></h2>
<p>Abans hi havia un comportament subtil: si la teva darrera hora de sopar era les 23:00, l'últim <strong>slot reservable</strong> era a les 22:30 (perquè deixàvem un marge "automàtic"). Resultat: la gent que volia reservar a les 23:00 no podia, encara que el teu restaurant sí que acceptava clients a aquesta hora.</p>
<p>Ara els slots arriben <strong>fins a l'hora exacta que has configurat</strong>. Si dius que l'última hora són les 23:00, les 23:00 és seleccionable.</p>
<p>Si vols deixar marge, ho configures tu explícitament canviant la darrera hora a 22:30. Més control i menys màgia.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Carta pública redissenyada i propostes d'esdeveniments de grup]]></title>
        <id>https://wiki.restapro.es/ca/changelog/carta-publica-eventos-grupo</id>
        <link href="https://wiki.restapro.es/ca/changelog/carta-publica-eventos-grupo"/>
        <updated>2026-04-22T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Carta pública responsive i accessible, propostes d'esdeveniments per a grups directament des de la teva pàgina pública.]]></summary>
        <content type="html"><![CDATA[<p>Dos canvis visibles per als teus clients en aquest lot: la <strong>carta pública</strong> s'ha redissenyat sencera i ara es pot demanar un <strong>esdeveniment de grup</strong> des de la teva pàgina sense passar per una trucada.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="carta-pública-nova">Carta pública nova<a href="https://wiki.restapro.es/ca/changelog/carta-publica-eventos-grupo#carta-p%C3%BAblica-nova" class="hash-link" aria-label="Enllaç directe a Carta pública nova" title="Enllaç directe a Carta pública nova" translate="no">​</a></h2>
<p>La carta que veuen els clients (a través del QR o a <code>restapro.es/r/el-teu-restaurant</code>) ara:</p>
<ul>
<li class=""><strong>Responsive</strong> de debò: es llegeix igual en un iPhone SE que en un iPad.</li>
<li class=""><strong>Accessible</strong>: navegable amb teclat, colors amb contrast suficient, els lectors de pantalla l'entenen.</li>
<li class=""><strong>Filtres per al·lèrgens</strong>: els clients poden filtrar per gluten, lactosa, fruits secs, etc. Les dades les configures tu en crear cada plat.</li>
<li class=""><strong>Empty state contextual</strong>: si filtren i no hi ha res per mostrar, suggeriments per ampliar la cerca.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="propostes-desdeveniments-de-grup">Propostes d'esdeveniments de grup<a href="https://wiki.restapro.es/ca/changelog/carta-publica-eventos-grupo#propostes-desdeveniments-de-grup" class="hash-link" aria-label="Enllaç directe a Propostes d'esdeveniments de grup" title="Enllaç directe a Propostes d'esdeveniments de grup" translate="no">​</a></h2>
<p>A la teva pàgina pública apareix un botó <strong>"Reserva per a grup"</strong> quan algú vol venir amb molts comensals. El client:</p>
<ol>
<li class="">Omple un formulari curt: data, nombre de persones, tipus d'esdeveniment, notes.</li>
<li class="">La proposta arriba al teu backoffice; no és una reserva confirmada.</li>
<li class="">Tu l'aproves, la rebutges o respons amb un pressupost / disponibilitat alternativa.</li>
</ol>
<p>Per a reserves grans (15+) aquest és un flux molt millor que una reserva online estàndard: dones temps per coordinar-te amb cuina, fixar menú, demanar un avançament, etc.</p>
<p>Més a la <a class="" href="https://wiki.restapro.es/ca/clientes/eventos-de-grupo">guia d'esdeveniments de grup</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="altres-millores-petites">Altres millores petites<a href="https://wiki.restapro.es/ca/changelog/carta-publica-eventos-grupo#altres-millores-petites" class="hash-link" aria-label="Enllaç directe a Altres millores petites" title="Enllaç directe a Altres millores petites" translate="no">​</a></h2>
<ul>
<li class=""><strong>Embed de reserves</strong> sense banner de galetes (el gestiones tu al teu web, no es duplica).</li>
<li class=""><strong>Eliminar la gestió de reserves</strong> ja no exigeix confirmació amb un text exacte, només un botó.</li>
<li class=""><strong>Tracking de cada acció</strong> de l'hostaler: ara sabem quines pantalles uses i quines parts estan òrfenes, per anar-les polint en lloc d'endevinar.</li>
</ul>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Pinche passa a Gemini 2.5 i logs centralitzats]]></title>
        <id>https://wiki.restapro.es/ca/changelog/pinche-mas-rapido-y-logs</id>
        <link href="https://wiki.restapro.es/ca/changelog/pinche-mas-rapido-y-logs"/>
        <updated>2026-04-17T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Pinche, l'assistent IA, migra a Gemini 2.5 Flash: respostes més ràpides i millor raonament. Logs unificats a Slack via n8n.]]></summary>
        <content type="html"><![CDATA[<p>Millores invisibles però importants: l'assistent IA és més ràpid i els errors de la plataforma ja no es queden en un log que ningú no mira.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="pinche-amb-gemini-25-flash">Pinche amb Gemini 2.5 Flash<a href="https://wiki.restapro.es/ca/changelog/pinche-mas-rapido-y-logs#pinche-amb-gemini-25-flash" class="hash-link" aria-label="Enllaç directe a Pinche amb Gemini 2.5 Flash" title="Enllaç directe a Pinche amb Gemini 2.5 Flash" translate="no">​</a></h2>
<p><strong>Pinche</strong> ara fa servir <strong>Gemini 2.5 Flash</strong> en lloc de la 2.0. Ho notaràs en:</p>
<ul>
<li class=""><strong>Velocitat.</strong> Les respostes triguen un 30% menys a començar a aparèixer.</li>
<li class=""><strong>Raonament.</strong> Millor quan li demanes coses com "quin canvi a la carta tindria més impacte en el tiquet mitjà?" o "explica això a un cambrer nou".</li>
<li class=""><strong>Cost.</strong> Igual o menor per a nosaltres, així que no impacta la teva factura.</li>
</ul>
<p>El canvi és transparent: Pinche continua responent en català i castellà, amb les mateixes eines de gestió.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="logs-centralitzats">Logs centralitzats<a href="https://wiki.restapro.es/ca/changelog/pinche-mas-rapido-y-logs#logs-centralitzats" class="hash-link" aria-label="Enllaç directe a Logs centralitzats" title="Enllaç directe a Logs centralitzats" translate="no">​</a></h2>
<p>Abans els errors de les edge functions vivien en sis llocs diferents: Supabase, Sentry, logs locals de nginx... Ara tots van a un <strong>canal <code>#logs</code> únic</strong> via n8n:</p>
<ul>
<li class="">Qualsevol error o warning de qualsevol funció serverless aterra a Slack en segons.</li>
<li class="">Si el teu restaurant té un comportament estrany i ens avises per correu, el correlacionem amb els logs del moment exacte.</li>
<li class="">Filtrem automàticament "soroll" conegut (timeouts esperables) per no fer spam al canal.</li>
</ul>
<p>T'afecta indirectament: quan alguna cosa es trenca en producció, ho veiem en minuts en lloc d'hores.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="túnel-de-sentry-via-m">Túnel de Sentry via <code>/m</code><a href="https://wiki.restapro.es/ca/changelog/pinche-mas-rapido-y-logs#t%C3%BAnel-de-sentry-via-m" class="hash-link" aria-label="Enllaç directe a túnel-de-sentry-via-m" title="Enllaç directe a túnel-de-sentry-via-m" translate="no">​</a></h2>
<p>Alguns bloquejadors d'anuncis bloquegen directament el domini de Sentry i ens quedàvem sense telemetria d'errors al frontend. Ara el frontend envia els errors a <code>/m</code> (un proxy del mateix origen al nostre nginx) que els reenvia a Sentry.</p>
<p>Resultat: <strong>veiem el 100% dels errors</strong> que passen al navegador, fins i tot d'usuaris amb uBlock Origin agressiu.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Regles de correu automàtiques: ho escrius una vegada, s'envia sol]]></title>
        <id>https://wiki.restapro.es/ca/changelog/reglas-email-automaticas</id>
        <link href="https://wiki.restapro.es/ca/changelog/reglas-email-automaticas"/>
        <updated>2026-04-16T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Crea regles que envien un correu quan es compleixen condicions de la reserva: gràcies, recordatori, recuperació d'inactius, primer client VIP.]]></summary>
        <content type="html"><![CDATA[<p>Fins ara, els correus automàtics eren un "tot o res": confirmació en reservar i poca cosa més. Ara pots definir <strong>regles fines</strong> per a quan i a qui envies què.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="com-es-munten">Com es munten<a href="https://wiki.restapro.es/ca/changelog/reglas-email-automaticas#com-es-munten" class="hash-link" aria-label="Enllaç directe a Com es munten" title="Enllaç directe a Com es munten" translate="no">​</a></h2>
<p>A <strong>Màrqueting → Automatitzacions</strong>, tries:</p>
<ol>
<li class=""><strong>Disparador.</strong> Quan s'avalua la regla: reserva creada, reserva confirmada, reserva completada, el client compleix X visites...</li>
<li class=""><strong>Condicions.</strong> Tan fines com vulguis: dia de la setmana, franja horària, mida del grup, canal d'origen, si és la primera visita.</li>
<li class=""><strong>Plantilla.</strong> Quin correu s'envia. Vénen 5-6 plantilles llestes (gràcies, recordatori, recuperació, codi de descompte, primera visita).</li>
<li class=""><strong>Delay.</strong> Quan s'envia: immediatament, 4 hores després, l'endemà, una setmana...</li>
<li class=""><strong>Topall per client.</strong> Perquè no facis spam: màxim X correus d'aquesta regla per persona.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="casos-típics-que-ja-funcionen">Casos típics que ja funcionen<a href="https://wiki.restapro.es/ca/changelog/reglas-email-automaticas#casos-t%C3%ADpics-que-ja-funcionen" class="hash-link" aria-label="Enllaç directe a Casos típics que ja funcionen" title="Enllaç directe a Casos típics que ja funcionen" translate="no">​</a></h2>
<ul>
<li class=""><strong>"Gràcies per la teva primera visita"</strong> amb un 10% de descompte a la pròxima, per a clients nous.</li>
<li class=""><strong>"T'enyorem"</strong> a clients que fa 3+ mesos que no vénen.</li>
<li class=""><strong>"Recordatori 24 h abans"</strong> només per a reserves grans (8+) o de divendres i dissabte.</li>
<li class=""><strong>"Per molts anys"</strong> una setmana abans amb un detall de la casa.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="live-preview--correu-de-prova">Live preview + correu de prova<a href="https://wiki.restapro.es/ca/changelog/reglas-email-automaticas#live-preview--correu-de-prova" class="hash-link" aria-label="Enllaç directe a Live preview + correu de prova" title="Enllaç directe a Live preview + correu de prova" translate="no">​</a></h2>
<p>En crear la regla pots veure-la renderitzada i enviar-te un correu de prova a tu mateix abans d'activar-la. T'estalvies el ridícul d'un placeholder no resolt a la safata d'un client.</p>
<p>Més a la <a class="" href="https://wiki.restapro.es/ca/publico-y-marketing/automatizaciones-email">guia d'automatitzacions</a> i a la <a class="" href="https://wiki.restapro.es/ca/publico-y-marketing/mailing-campaigns">guia de campanyes</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Mode quiosc a /app/local + repàs de densitat UI]]></title>
        <id>https://wiki.restapro.es/ca/changelog/modo-kiosko-y-densidad</id>
        <link href="https://wiki.restapro.es/ca/changelog/modo-kiosko-y-densidad"/>
        <updated>2026-04-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Vista en pantalla sempre encesa del servei del dia, descripcions en categories de carta i compactació de configuració i reserves.]]></summary>
        <content type="html"><![CDATA[<p>Lot de poliment visible: una vista pensada per tenir-la encesa en una pantalla darrere de la barra durant tot el servei, i una passada de densitat perquè l'app deixi de malbaratar píxels.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="mode-quiosc-a-applocal">Mode quiosc a <code>/app/local</code><a href="https://wiki.restapro.es/ca/changelog/modo-kiosko-y-densidad#mode-quiosc-a-applocal" class="hash-link" aria-label="Enllaç directe a mode-quiosc-a-applocal" title="Enllaç directe a mode-quiosc-a-applocal" translate="no">​</a></h2>
<p>Si tens una tauleta o monitor petit darrere de la barra per portar el servei, obre <code>/app/local</code>. És <strong>Servei en directe</strong> en mode net: sense sidebar, sense distraccions, tot l'espai per a taules i reserves.</p>
<p>Funciona bé en tauleta horitzontal i en pantalles petites muntades a la paret. La idea és que passi a formar part del mobiliari digital del restaurant, no una cosa que obres i tanques.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="descripció-a-les-categories-de-carta">Descripció a les categories de carta<a href="https://wiki.restapro.es/ca/changelog/modo-kiosko-y-densidad#descripci%C3%B3-a-les-categories-de-carta" class="hash-link" aria-label="Enllaç directe a Descripció a les categories de carta" title="Enllaç directe a Descripció a les categories de carta" translate="no">​</a></h2>
<p>A l'editor de carta, cada <strong>categoria</strong> ara pot tenir un <strong>subtítol descriptiu</strong>. Útil per:</p>
<ul>
<li class="">"Entrants per compartir" → text: "Pensats per a 2-3 persones, portem pa al centre"</li>
<li class="">"Postres" → text: "Fets a casa cada dia"</li>
<li class="">"Vins per copa" → text: "Selecció rotativa de la temporada, pregunta al teu cambrer"</li>
</ul>
<p>Apareix a la pàgina pública sota el nom de la categoria. Dona textura sense saturar.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="repàs-de-densitat">Repàs de densitat<a href="https://wiki.restapro.es/ca/changelog/modo-kiosko-y-densidad#rep%C3%A0s-de-densitat" class="hash-link" aria-label="Enllaç directe a Repàs de densitat" title="Enllaç directe a Repàs de densitat" translate="no">​</a></h2>
<p>Hem repassat la densitat en aquestes zones:</p>
<ul>
<li class=""><strong>Configuració</strong>: capçaleres més baixes, padding reduït; els formularis llargs ara caben en una pantalla.</li>
<li class=""><strong>Reserves</strong>: files més fines, columnes més ben balancejades per a llistes de 100+ reserves.</li>
<li class=""><strong>Dashboard</strong>: targetes més compactes; abans ocupava massa per al que deia.</li>
<li class=""><strong>Chrome general</strong>: barra superior més fina, sidebar amb padding ajustat.</li>
<li class=""><strong>Capacitat i filtres de carta</strong>: menys aire entre controls.</li>
</ul>
<p>Resultat: hi cap entre un 25 i un 40% més d'informació sense perdre llegibilitat.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="e2e-smoke-tests--i18n-públiques">E2E smoke tests + i18n públiques<a href="https://wiki.restapro.es/ca/changelog/modo-kiosko-y-densidad#e2e-smoke-tests--i18n-p%C3%BAbliques" class="hash-link" aria-label="Enllaç directe a E2E smoke tests + i18n públiques" title="Enllaç directe a E2E smoke tests + i18n públiques" translate="no">​</a></h2>
<p>Bonus tècnic: hem afegit <strong>smoke tests end-to-end</strong> a GitHub Actions que proven login + crear reserva + veure carta pública a cada commit. Si un canvi trenca algun d'aquests fluxos, el commit no es mergeja.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Editor visual de taules + diverses cartes (dinar, sopar, brunch)]]></title>
        <id>https://wiki.restapro.es/ca/changelog/editor-mesas-y-multi-cartas</id>
        <link href="https://wiki.restapro.es/ca/changelog/editor-mesas-y-multi-cartas"/>
        <updated>2026-04-14T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Dibuixa la teva sala amb drag & drop, accepta diverses plantes i publica diverses cartes segons el servei.]]></summary>
        <content type="html"><![CDATA[<p>Dos llançaments grans el mateix dia. El primer és per als que havien de dibuixar la sala en un tovalló; el segon, per als que tenen carta de dinar diferent de la de sopar i s'estaven editant tota l'estona.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="editor-visual-de-taules">Editor visual de taules<a href="https://wiki.restapro.es/ca/changelog/editor-mesas-y-multi-cartas#editor-visual-de-taules" class="hash-link" aria-label="Enllaç directe a Editor visual de taules" title="Enllaç directe a Editor visual de taules" translate="no">​</a></h2>
<p>A <strong>Configuració → Taules</strong> ja no cal llistar taules a mà. Tens un llenç on:</p>
<ul>
<li class="">Arrossegues taules des d'una paleta (quadrada, rodona, allargada).</li>
<li class="">Assignes capacitat mínima i màxima.</li>
<li class="">Accepta <strong>diverses plantes</strong> (terrassa a dalt, saló a baix, reservats a part).</li>
<li class="">Cada taula té la seva zona i pot mostrar-se o no a les reserves en línia.</li>
</ul>
<p>Quan un client reserva online, veiem quina taula està lliure <strong>gràficament</strong> a la mateixa fitxa de la reserva, i la podem assignar amb un clic.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="diverses-cartes-per-restaurant">Diverses cartes per restaurant<a href="https://wiki.restapro.es/ca/changelog/editor-mesas-y-multi-cartas#diverses-cartes-per-restaurant" class="hash-link" aria-label="Enllaç directe a Diverses cartes per restaurant" title="Enllaç directe a Diverses cartes per restaurant" translate="no">​</a></h2>
<p>Si el teu negoci té <strong>carta de dinar i de sopar</strong>, <strong>menú del dia</strong>, <strong>brunch del cap de setmana</strong>... tot això ja cap a RestaPro. Cada carta:</p>
<ul>
<li class="">Té el seu nom i un tipus (dinar / sopar / menú del dia / esmorzar...).</li>
<li class="">Apareix com a pestanya a la teva <strong>pàgina pública</strong> i al QR.</li>
<li class="">Es pot activar i desactivar per servei sense tocar les altres.</li>
</ul>
<p>L'editor de carta canvia entre elles amb un selector a dalt: és la mateixa pantalla, multiplicada.</p>
<p>Més a la <a class="" href="https://wiki.restapro.es/ca/workspace/capacidad-mesas-vs-plazas">guia de taules i places</a> i a la <a class="" href="https://wiki.restapro.es/ca/carta-digital/editor-carta">guia de l'editor de carta</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Landing nova, billing polit i enduriment de seguretat]]></title>
        <id>https://wiki.restapro.es/ca/changelog/landing-legal-y-billing</id>
        <link href="https://wiki.restapro.es/ca/changelog/landing-legal-y-billing"/>
        <updated>2026-04-12T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Redisseny del web públic, pàgines legals completes, billing amb Stripe portal i una primera passada de seguretat seriosa.]]></summary>
        <content type="html"><![CDATA[<p>Sprint llarg de poliment: web pública nova, billing més amable i una passada seriosa de seguretat. Si feia temps que no entraves a <code>restapro.es</code>, ara és una altra cosa.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="nova-landing-pública">Nova landing pública<a href="https://wiki.restapro.es/ca/changelog/landing-legal-y-billing#nova-landing-p%C3%BAblica" class="hash-link" aria-label="Enllaç directe a Nova landing pública" title="Enllaç directe a Nova landing pública" translate="no">​</a></h2>
<p>Hem reescrit <strong><code>restapro.es</code></strong> sencera. Les decisions grans:</p>
<ul>
<li class=""><strong>Bloc "per a hostalers"</strong> a dalt, no per a inversors ni periodistes.</li>
<li class=""><strong>Captures reals</strong> de l'app, no mockups de Figma.</li>
<li class=""><strong>Preus visibles</strong> sense "contacta amb vendes". El que val és el que diu la pàgina.</li>
<li class=""><strong>Comparativa transparent</strong> amb TheFork i Resy.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="pàgines-legals-completes">Pàgines legals completes<a href="https://wiki.restapro.es/ca/changelog/landing-legal-y-billing#p%C3%A0gines-legals-completes" class="hash-link" aria-label="Enllaç directe a Pàgines legals completes" title="Enllaç directe a Pàgines legals completes" translate="no">​</a></h2>
<p>A <code>restapro.es/legal</code> s'hi sumen:</p>
<ul>
<li class=""><strong>Política de cookies</strong> específica amb el desglossament de quines fem servir i quines no (no fem servir analytics de tercers a les públiques).</li>
<li class=""><strong>Avís legal</strong> amb CIF i adreça registral.</li>
<li class=""><strong>Condicions d'ús</strong> del servei per a clients finals (els comensals que reserven).</li>
<li class=""><strong>Política de tractament</strong> de dades personals amb drets GDPR clars.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="billing-amb-stripe-portal">Billing amb Stripe portal<a href="https://wiki.restapro.es/ca/changelog/landing-legal-y-billing#billing-amb-stripe-portal" class="hash-link" aria-label="Enllaç directe a Billing amb Stripe portal" title="Enllaç directe a Billing amb Stripe portal" translate="no">​</a></h2>
<p>Si pagues RestaPro, a <strong>Workspace → Facturació</strong> veus un botó <strong>"Gestionar subscripció"</strong> que et porta al <strong>Stripe Customer Portal</strong>:</p>
<ul>
<li class="">Canvies mètode de pagament, descarregues factures, veus historial.</li>
<li class="">És el de Stripe, no un de fet per nosaltres: les dades de targeta no passen mai per RestaPro.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="enduriment-de-seguretat">Enduriment de seguretat<a href="https://wiki.restapro.es/ca/changelog/landing-legal-y-billing#enduriment-de-seguretat" class="hash-link" aria-label="Enllaç directe a Enduriment de seguretat" title="Enllaç directe a Enduriment de seguretat" translate="no">​</a></h2>
<p>Passada seriosa sota el capó (no es veu, però es nota):</p>
<ul>
<li class=""><strong>Rate-limit</strong> en endpoints públics perquè cap bot no tombi la pàgina d'un restaurant.</li>
<li class=""><strong>Validació estricta</strong> d'inputs als formularis públics.</li>
<li class=""><strong>CSP</strong> (Content-Security-Policy) ajustada per limitar quins scripts es poden executar.</li>
<li class=""><strong>Headers de seguretat</strong> a nginx (HSTS, X-Frame-Options, X-Content-Type-Options).</li>
<li class=""><strong>Webhooks</strong> signats amb secrets rotables.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="màrqueting-de-ressenyes--cobertura-de-tests">Màrqueting de ressenyes + cobertura de tests<a href="https://wiki.restapro.es/ca/changelog/landing-legal-y-billing#m%C3%A0rqueting-de-ressenyes--cobertura-de-tests" class="hash-link" aria-label="Enllaç directe a Màrqueting de ressenyes + cobertura de tests" title="Enllaç directe a Màrqueting de ressenyes + cobertura de tests" translate="no">​</a></h2>
<p>Com a bonus: hem afegit el flux de <strong>review marketing</strong> integrat amb Google i hem pujat la cobertura de tests al 72% per reduir regressions.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Cupons, cancel·lació amb motiu i esborranys de correu amb IA]]></title>
        <id>https://wiki.restapro.es/ca/changelog/cupones-cancelacion-y-emails-ia</id>
        <link href="https://wiki.restapro.es/ca/changelog/cupones-cancelacion-y-emails-ia"/>
        <updated>2026-04-08T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Llancem cupons de descompte, cancel·lació de pla amb enquesta i un assistent IA que t'escriu el primer esborrany del correu.]]></summary>
        <content type="html"><![CDATA[<p>Tres coses grans en aquest lot: poder donar descomptes, sortir de RestaPro de manera elegant (i deixar-nos saber per què), i deixar de barallar-te amb el full en blanc en escriure un correu als teus clients.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="cupons-de-descompte">Cupons de descompte<a href="https://wiki.restapro.es/ca/changelog/cupones-cancelacion-y-emails-ia#cupons-de-descompte" class="hash-link" aria-label="Enllaç directe a Cupons de descompte" title="Enllaç directe a Cupons de descompte" translate="no">​</a></h2>
<p>Si tens una promoció ("primer mes gratis", "20% per a avis en família"), ja pots crear cupons des del panell i compartir el codi. S'apliquen a la caixa de Stripe i es desactiven sols quan caduquen.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="cancellació-de-pla-amb-motiu">Cancel·lació de pla amb motiu<a href="https://wiki.restapro.es/ca/changelog/cupones-cancelacion-y-emails-ia#cancellaci%C3%B3-de-pla-amb-motiu" class="hash-link" aria-label="Enllaç directe a Cancel·lació de pla amb motiu" title="Enllaç directe a Cancel·lació de pla amb motiu" translate="no">​</a></h2>
<p>Si un hostaler decideix donar-se de baixa, li demanem un motiu en una enquesta curta abans de processar la cancel·lació. Tres avantatges:</p>
<ul>
<li class="">Tu deixes el pla en pausa, no es fa efectiu fins al final del període.</li>
<li class="">Nosaltres aprenem per què te'n vas. És feedback més útil que qualsevol NPS anònim.</li>
<li class="">Si el motiu és una cosa que podem arreglar (preu, una funcionalitat concreta), et responem per correu abans del tall.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="assistent-ia-per-a-correus-de-màrqueting">Assistent IA per a correus de màrqueting<a href="https://wiki.restapro.es/ca/changelog/cupones-cancelacion-y-emails-ia#assistent-ia-per-a-correus-de-m%C3%A0rqueting" class="hash-link" aria-label="Enllaç directe a Assistent IA per a correus de màrqueting" title="Enllaç directe a Assistent IA per a correus de màrqueting" translate="no">​</a></h2>
<p>En crear una campanya a <strong>Màrqueting → Nova campanya</strong>, ara hi ha un botó <strong>"Generar esborrany amb IA"</strong>. Li dones tres dades:</p>
<ul>
<li class="">A qui va (clients nous / habituals / VIPs)</li>
<li class="">Què vols aconseguir (omplir dimarts, anunciar carta nova, recuperar inactius)</li>
<li class="">To (proper, formal, divertit)</li>
</ul>
<p>I t'escriu assumpte + cos + CTA. L'edites, te l'apropies i l'envies. Molt més ràpid que començar de zero.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="telemetria-de-pàgines-públiques">Telemetria de pàgines públiques<a href="https://wiki.restapro.es/ca/changelog/cupones-cancelacion-y-emails-ia#telemetria-de-p%C3%A0gines-p%C3%BAbliques" class="hash-link" aria-label="Enllaç directe a Telemetria de pàgines públiques" title="Enllaç directe a Telemetria de pàgines públiques" translate="no">​</a></h2>
<p>Com a bonus tècnic: la teva <strong>pàgina pública de reserves</strong> ara compta visites. Apareix a analítiques perquè vegis si invertir en SEO o anuncis compensa.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Demana ressenyes als teus comensals sense barallar-te amb el copy]]></title>
        <id>https://wiki.restapro.es/ca/changelog/emails-para-pedir-resenas</id>
        <link href="https://wiki.restapro.es/ca/changelog/emails-para-pedir-resenas"/>
        <updated>2026-03-27T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Enviament automàtic de correu post-visita per demanar ressenya a Google. Tria la plantilla, tria el moment i oblida-te'n.]]></summary>
        <content type="html"><![CDATA[<p>Les ressenyes mouen més reserves que qualsevol campanya que paguis. Però demanar-les a mà client per client no escala. Per això hem integrat un flux automàtic a RestaPro.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="com-funciona">Com funciona<a href="https://wiki.restapro.es/ca/changelog/emails-para-pedir-resenas#com-funciona" class="hash-link" aria-label="Enllaç directe a Com funciona" title="Enllaç directe a Com funciona" translate="no">​</a></h2>
<ol>
<li class=""><strong>Tries una plantilla</strong> predissenyada (agraïment + petició + enllaç directe a la teva fitxa de Google).</li>
<li class=""><strong>Configures el delay</strong> (l'habitual: 4 hores després de la reserva, quan el client ja és a casa amb el cafè).</li>
<li class=""><strong>Actives la regla</strong> i RestaPro envia el correu cada vegada que una reserva es marca com a completada.</li>
</ol>
<p>El client obre el correu, fa clic, arriba al teu Google Business i deixa la ressenya en menys de 30 segons. Si diu que no o ho ignora, no s'ha perdut res: el client que es volia queixar normalment no respon aquests correus.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="el-que-fa-que-això-funcioni-bé">El que fa que això funcioni bé<a href="https://wiki.restapro.es/ca/changelog/emails-para-pedir-resenas#el-que-fa-que-aix%C3%B2-funcioni-b%C3%A9" class="hash-link" aria-label="Enllaç directe a El que fa que això funcioni bé" title="Enllaç directe a El que fa que això funcioni bé" translate="no">​</a></h2>
<ul>
<li class=""><strong>Bloqueig de màrqueting 24 h</strong> post-visita: si la persona ja ha rebut un correu teu (recordatori, confirmació), no li torna a arribar res el mateix dia. Ningú no se sent perseguit.</li>
<li class=""><strong>Respecte a les baixes.</strong> El client que es treu de la llista no rep més correus de màrqueting, a la primera, sense discussió.</li>
<li class=""><strong>Tracking real.</strong> El <a class="" href="https://wiki.restapro.es/ca/publico-y-marketing/visibilidad-google">dashboard de ressenyes de Google</a> mostra quantes ressenyes han vingut per aquest flux.</li>
</ul>
<p>Més detall a la <a class="" href="https://wiki.restapro.es/ca/publico-y-marketing/solicitar-resenas">guia de sol·licitar ressenyes</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Importar la teva carta i horaris sense escriure res]]></title>
        <id>https://wiki.restapro.es/ca/changelog/importar-carta-y-horarios</id>
        <link href="https://wiki.restapro.es/ca/changelog/importar-carta-y-horarios"/>
        <updated>2026-03-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Importa la teva carta des del web del restaurant, copia els horaris al porta-retalls i enganxa les dades de Google.]]></summary>
        <content type="html"><![CDATA[<p>Si ja tens la carta penjada en una pàgina pròpia o a Google Business, RestaPro pot tirar d'allà en lloc d'obligar-te a escriure-la una altra vegada.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="què-hem-llançat">Què hem llançat<a href="https://wiki.restapro.es/ca/changelog/importar-carta-y-horarios#qu%C3%A8-hem-llan%C3%A7at" class="hash-link" aria-label="Enllaç directe a Què hem llançat" title="Enllaç directe a Què hem llançat" translate="no">​</a></h2>
<ul>
<li class=""><strong>Importador des d'URL.</strong> A <strong>Carta → Importar web</strong> enganxes l'URL pública de la teva carta i RestaPro llegeix títols, descripcions, preus i categories. Després tu revises i corregeixes el que calgui.</li>
<li class=""><strong>Importar des de Google Places.</strong> A l'alta del restaurant, si trobes la teva fitxa, en portem telèfon, adreça, horaris i foto de portada d'un sol cop.</li>
<li class=""><strong>Copiar horaris al porta-retalls.</strong> Botó ràpid per portar els teus horaris de RestaPro al teu web, a xarxes o a un cartell.</li>
<li class=""><strong>Accions ràpides al dashboard.</strong> Tres botons per crear reserva, marcar walk-in i obrir la carta sense navegar pel menú.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="per-què-importa">Per què importa<a href="https://wiki.restapro.es/ca/changelog/importar-carta-y-horarios#per-qu%C3%A8-importa" class="hash-link" aria-label="Enllaç directe a Per què importa" title="Enllaç directe a Per què importa" translate="no">​</a></h2>
<p>L'alta inicial és el moment on la gent es cau més. Reduir el temps de "primer plat visible a la meva pàgina" d'una hora a cinc minuts és la diferència entre començar a fer servir RestaPro avui o deixar-ho per a la setmana vinent (que gairebé mai no arriba).</p>
<p>Fes un cop d'ull a la <a class="" href="https://wiki.restapro.es/ca/empezar/alta-restaurante">guia d'alta del restaurant</a> i a la <a class="" href="https://wiki.restapro.es/ca/carta-digital/editor-carta">guia de la carta digital</a> per als detalls.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Rols d'equip, perfil editable i pàgina legal]]></title>
        <id>https://wiki.restapro.es/ca/changelog/roles-equipo-y-legal</id>
        <link href="https://wiki.restapro.es/ca/changelog/roles-equipo-y-legal"/>
        <updated>2026-03-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Convida el teu equip amb rols diferenciats, edita el teu perfil amb avatar i pàgina legal pública.]]></summary>
        <content type="html"><![CDATA[<p>Lot d'"ergonomia i compliment": si vols donar accés al teu encarregat o cap de sala, ara és un clic. I si t'ho demanen els teus assessors, ja tens pàgina legal pública.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="rols-dequip">Rols d'equip<a href="https://wiki.restapro.es/ca/changelog/roles-equipo-y-legal#rols-dequip" class="hash-link" aria-label="Enllaç directe a Rols d'equip" title="Enllaç directe a Rols d'equip" translate="no">​</a></h2>
<p>A <strong>Workspace → Membres</strong> pots convidar persones amb tres nivells:</p>
<ul>
<li class=""><strong>Owner</strong> (tu). Control total. Només hi pot haver un owner.</li>
<li class=""><strong>Admin.</strong> Gestiona reserves, carta, configuració; no toca facturació ni esborra el restaurant.</li>
<li class=""><strong>Staff.</strong> Veu i gestiona reserves, marca walk-ins; no entra a màrqueting ni a configuració.</li>
</ul>
<p>Cada acció del backoffice respecta aquests rols automàticament. Si un staff prova d'entrar a billing, veu un missatge clar en lloc d'un error tècnic.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="edició-de-perfil--avatar">Edició de perfil + avatar<a href="https://wiki.restapro.es/ca/changelog/roles-equipo-y-legal#edici%C3%B3-de-perfil--avatar" class="hash-link" aria-label="Enllaç directe a Edició de perfil + avatar" title="Enllaç directe a Edició de perfil + avatar" translate="no">​</a></h2>
<p>Al teu <strong>compte</strong> ja pots canviar nom, foto i correu. Les fotos es pugen a un bucket privat (no públic), amb polítiques RLS que només et deixen tocar la teva.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="pàgina-legal-pública">Pàgina legal pública<a href="https://wiki.restapro.es/ca/changelog/roles-equipo-y-legal#p%C3%A0gina-legal-p%C3%BAblica" class="hash-link" aria-label="Enllaç directe a Pàgina legal pública" title="Enllaç directe a Pàgina legal pública" translate="no">​</a></h2>
<p><code>restapro.es/legal</code> amb privadesa, condicions i avís legal a punt. Si el teu gestor et demana enllaçar-les des del teu web, ja estan publicades.</p>
<p>Més a <a class="" href="https://wiki.restapro.es/ca/workspace/roles-permisos">rols i permisos</a>.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[RestaPro obre les portes]]></title>
        <id>https://wiki.restapro.es/ca/changelog/hola-mundo</id>
        <link href="https://wiki.restapro.es/ca/changelog/hola-mundo"/>
        <updated>2026-03-19T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Llancem la primera versió de RestaPro: un SaaS de gestió integral per a restaurants pensat en català i castellà.]]></summary>
        <content type="html"><![CDATA[<p>Avui publiquem la <strong>primera versió</strong> de RestaPro. És la culminació de mesos pensant com hauria de ser una eina de gestió per a hostaleria que no et faci sentir que lluites contra ella.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="què-inclou-aquesta-v1">Què inclou aquesta v1<a href="https://wiki.restapro.es/ca/changelog/hola-mundo#qu%C3%A8-inclou-aquesta-v1" class="hash-link" aria-label="Enllaç directe a Què inclou aquesta v1" title="Enllaç directe a Què inclou aquesta v1" translate="no">​</a></h2>
<ul>
<li class=""><strong>Reserves online</strong> amb pàgina pública per restaurant (<code>restapro.es/c/el-teu-restaurant</code>).</li>
<li class=""><strong>Backoffice de reserves</strong> per gestionar el dia a dia (crear, editar, cancel·lar, marcar arribada i no-show).</li>
<li class=""><strong>Carta digital</strong> amb QR públic (<code>restapro.es/r/el-teu-restaurant</code>).</li>
<li class=""><strong>Dashboard</strong> amb la foto del dia.</li>
<li class=""><strong>Auth</strong> amb correu electrònic + contrasenya.</li>
<li class=""><strong>Multi-restaurant</strong> des del primer dia: un workspace pot tenir diversos locals.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="filosofia">Filosofia<a href="https://wiki.restapro.es/ca/changelog/hola-mundo#filosofia" class="hash-link" aria-label="Enllaç directe a Filosofia" title="Enllaç directe a Filosofia" translate="no">​</a></h2>
<p>RestaPro està construït amb tres principis que defensarem en cada feature:</p>
<ol>
<li class=""><strong>Idioma primer, sense dreceres.</strong> No hi ha i18n a mitges, no hi ha placeholders en anglès. Cada paraula està pensada per a algú que fa paelles, no per a algú que fa APIs.</li>
<li class=""><strong>L'hostaler no hauria de llegir documentació per fer servir l'app.</strong> Si una pantalla necessita explicació, el problema és a la pantalla.</li>
<li class=""><strong>Les dades són del restaurant.</strong> Export en CSV, eliminació completa amb un botó, sense lock-in.</li>
</ol>
<p>Benvingut. Si fa temps que ets a l'hostaleria i hi ha alguna cosa que no encaixa amb com treballes, escriu-nos. RestaPro és l'eina més jove del mercat i per això és la que pot canviar més de pressa per adaptar-se a tu.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Les dues setmanes abans d'obrir les portes]]></title>
        <id>https://wiki.restapro.es/ca/changelog/dos-semanas-antes-del-lanzamiento</id>
        <link href="https://wiki.restapro.es/ca/changelog/dos-semanas-antes-del-lanzamiento"/>
        <updated>2026-02-27T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Smoke tests E2E, pàgina legal, billing amb Stripe, hardening de seguretat i cafè. El que va passar entre la beta i el llançament.]]></summary>
        <content type="html"><![CDATA[<p>A finals de febrer teníem una beta funcionant bé amb vuit restaurants i una decisió presa: el 19 de març obríem al públic. Això ens deixava unes dues setmanes i mitja. Se sentien curtes. I, efectivament, ho van ser.</p>
<p>No volíem llançar a la gran, amb plats i timbals. Volíem llançar tranquils: que qualsevol hostaler pogués entrar, registrar-se, pagar i començar a treballar sense sorpreses. Sona modest. Implica una llista de tasques llarga.</p>
<!-- -->
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="el-que-vam-tancar-en-aquelles-dues-setmanes">El que vam tancar en aquelles dues setmanes<a href="https://wiki.restapro.es/ca/changelog/dos-semanas-antes-del-lanzamiento#el-que-vam-tancar-en-aquelles-dues-setmanes" class="hash-link" aria-label="Enllaç directe a El que vam tancar en aquelles dues setmanes" title="Enllaç directe a El que vam tancar en aquelles dues setmanes" translate="no">​</a></h2>
<p>Aquestes són les coses grans que van entrar a la recta final:</p>
<ul>
<li class=""><strong>Smoke tests HTTP automatitzats.</strong> Un script (<code>npm run smoke:http</code>) que comprova que les rutes crítiques tornen el codi correcte després de cada desplegament. Res sofisticat, però suficient per detectar caigudes òbvies.</li>
<li class=""><strong>Cobertura E2E mínima.</strong> Tres fluxos crítics verificats manualment abans de cada release: registre complet, creació de reserva pública, edició i publicació de carta.</li>
<li class=""><strong>Pàgina legal completa.</strong> Termes de servei, política de privadesa, avís de galetes. Vam treballar amb un advocat especialitzat en SaaS per no copiar plantilles dubtoses. Passar-ho per alt no era opció.</li>
<li class=""><strong>Billing amb Stripe portal.</strong> No vam reinventar la roda: el portal de client de Stripe gestiona subscripcions, mètodes de pagament, factures. Nosaltres ens vam limitar a integrar checkout i webhooks.</li>
<li class=""><strong>Hardening de seguretat.</strong> Auditoria de polítiques RLS, revisió de rols de servei, rotació de secrets, alertes en errors 500. L'avorrit però imprescindible.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="el-dia-que-gairebé-trenquem-la-base-de-dades">El dia que gairebé trenquem la base de dades<a href="https://wiki.restapro.es/ca/changelog/dos-semanas-antes-del-lanzamiento#el-dia-que-gaireb%C3%A9-trenquem-la-base-de-dades" class="hash-link" aria-label="Enllaç directe a El dia que gairebé trenquem la base de dades" title="Enllaç directe a El dia que gairebé trenquem la base de dades" translate="no">​</a></h2>
<p>Hi va haver un ensurt, és clar. A quatre dies del llançament, una migració va tocar una taula gran i va bloquejar les consultes durant 90 segons. En producció real això és una eternitat. La beta ho va notar però ningú no estava fent res crític en aquell moment. Decisió immediata: a partir d'aquí, cap migració s'aplica sense un pla de rollback escrit i revisat per dues persones.</p>
<p>Aquesta norma continua vigent avui.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="el-que-vam-deixar-fora-expressament">El que vam deixar fora expressament<a href="https://wiki.restapro.es/ca/changelog/dos-semanas-antes-del-lanzamiento#el-que-vam-deixar-fora-expressament" class="hash-link" aria-label="Enllaç directe a El que vam deixar fora expressament" title="Enllaç directe a El que vam deixar fora expressament" translate="no">​</a></h2>
<p>La temptació d'afegir "una funcionalitat més" abans de llançar és enorme. Vam haver de dir que no a unes quantes coses:</p>
<ul>
<li class="">Mode fosc complet. Els estils estaven a punt però no provats a fons.</li>
<li class="">Integració amb TheFork. Sabíem que la faríem, però no el dia 1.</li>
<li class="">App nativa mòbil. El web responsive cobria el 95% dels casos.</li>
<li class="">Màrqueting automatitzat per SMS. Correu primer, SMS després.</li>
</ul>
<p>Tot això va acabar sortint les setmanes següents, com pots veure a les entrades posteriors d'aquest blog.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="el-dia-anterior">El dia anterior<a href="https://wiki.restapro.es/ca/changelog/dos-semanas-antes-del-lanzamiento#el-dia-anterior" class="hash-link" aria-label="Enllaç directe a El dia anterior" title="Enllaç directe a El dia anterior" translate="no">​</a></h2>
<p>La nit del 18 de març vam activar els pagaments en producció, vam fer un últim desplegament i vam deixar córrer els smoke tests. Zero errors. Vam apagar el portàtil amb aquella sensació rara que has arribat a la línia de sortida després d'haver corregut mitja marató. El llançament real, amb les seves pròpies històries, l'explica la primera entrada d'aquest blog: <a class="" href="https://wiki.restapro.es/ca/changelog/hola-mundo">"Hola món"</a>.</p>
<p>A partir d'aquell dia, RestaPro va deixar de ser un projecte i va començar a ser una eina feta servir per gent real cada nit.</p>]]></content>
        <author>
            <name>Equip RestaPro</name>
            <uri>https://www.restapro.es</uri>
        </author>
    </entry>
</feed>