Index: src/views/pages/admin-paid.ejs
===================================================================
--- src/views/pages/admin-paid.ejs	(revision 603d2461f6fb57f0422bea17aad09eef157f788f)
+++ src/views/pages/admin-paid.ejs	(revision c3d12a6f5721ed2faee19362b8d7e0caeea854d5)
@@ -47,4 +47,8 @@
       <input type="text" name="campaign_id" value="<%= status.campaignId || '' %>" autocomplete="off" style="width:100%">
     </label>
+    <label>Openbare Patreon-pagina
+      <input type="url" name="patreon_url" value="<%= status.patreonUrl || '' %>" placeholder="https://www.patreon.com/jouwnaam" autocomplete="off" style="width:100%">
+      <small style="color:var(--ink-soft,#888)">De link waar bezoekers supporter kunnen worden. Getoond als "Word supporter" wanneer iemand nog niet doneert.</small>
+    </label>
     <label>Creator access token
       <input type="password" name="access_token" placeholder="blijft ongewijzigd" autocomplete="off" style="width:100%">
Index: src/views/pages/paid-gate.ejs
===================================================================
--- src/views/pages/paid-gate.ejs	(revision 603d2461f6fb57f0422bea17aad09eef157f788f)
+++ src/views/pages/paid-gate.ejs	(revision c3d12a6f5721ed2faee19362b8d7e0caeea854d5)
@@ -20,4 +20,7 @@
     <button type="button" id="pg-unlock" class="pg-btn">Ontgrendelen</button>
     <p id="pg-status" class="pg-status" hidden></p>
+    <% if (typeof pgPatronUrl !== 'undefined' && pgPatronUrl) { %>
+      <p class="pg-join">Nog geen supporter? <a href="<%= pgPatronUrl %>" target="_blank" rel="noopener">Word het op Patreon</a> en ontgrendel daarna met je passkey.</p>
+    <% } %>
   </section>
 </article>
@@ -88,3 +91,4 @@
   .pg-status { margin: 12px 0 0; opacity: .9; }
   .pg-status.is-err { color: #c0392b; }
+  .pg-join { margin: 14px 0 0; font-size: .92rem; opacity: .8; }
 </style>
Index: src/views/pages/paid-result.ejs
===================================================================
--- src/views/pages/paid-result.ejs	(revision 603d2461f6fb57f0422bea17aad09eef157f788f)
+++ src/views/pages/paid-result.ejs	(revision c3d12a6f5721ed2faee19362b8d7e0caeea854d5)
@@ -1,2 +1,7 @@
+<%
+  var _slug = (typeof postSlug !== 'undefined' && postSlug) ? postSlug : '';
+  var _base = (typeof siteUrlBase !== 'undefined' && siteUrlBase) ? siteUrlBase : '';
+  var _patron = (typeof patronUrl !== 'undefined' && patronUrl) ? patronUrl : '';
+%>
 <section class="pr">
   <div class="pr-card">
@@ -4,5 +9,5 @@
     <% if (reason === 'notpatron') { %>
       <h1 class="pr-h1">Nog geen supporter</h1>
-      <p class="pr-sub">Je bent (nog) geen actieve supporter van deze site op Patreon. Word supporter en probeer het opnieuw.</p>
+      <p class="pr-sub">Je bent (nog) geen actieve supporter van deze site op Patreon. Word supporter en probeer het daarna opnieuw vanaf de post.</p>
     <% } else if (reason === 'tier') { %>
       <h1 class="pr-h1">Een niveau hoger nodig</h1>
@@ -11,11 +16,22 @@
         Jouw steun is nu &euro;<%= ((typeof haveCents !== 'undefined' ? haveCents : 0)/100).toFixed(2) %>. Verhoog je steun en probeer opnieuw.
       </p>
+    <% } else if (reason === 'expired') { %>
+      <h1 class="pr-h1">Aanvraag verlopen</h1>
+      <p class="pr-sub">Deze ontgrendel-link is verlopen of al gebruikt. Ga terug naar de post en probeer het opnieuw.</p>
     <% } else { %>
       <h1 class="pr-h1">Ontgrendelen afgebroken</h1>
       <p class="pr-sub">Er is niets gekoppeld. Je kunt het opnieuw proberen vanaf de post.</p>
     <% } %>
-    <% if (typeof postSlug !== 'undefined' && postSlug) { %>
-      <p><a class="pr-btn" href="<%= (typeof siteUrlBase !== 'undefined' && siteUrlBase ? siteUrlBase : '') %>/<%= postSlug %>">Terug naar de post</a></p>
-    <% } %>
+
+    <div class="pr-actions">
+      <% if ((reason === 'notpatron' || reason === 'tier') && _patron) { %>
+        <a class="pr-btn" href="<%= _patron %>" target="_blank" rel="noopener">Word supporter op Patreon</a>
+      <% } %>
+      <% if (_slug) { %>
+        <a class="pr-btn pr-btn-ghost" href="<%= _base %>/<%= _slug %>">Terug naar de post</a>
+      <% } else { %>
+        <a class="pr-btn pr-btn-ghost" href="<%= _base %>/">Terug naar de site</a>
+      <% } %>
+    </div>
   </div>
 </section>
@@ -26,5 +42,7 @@
   .pr-ic { font-size: 38px; margin-bottom: 6px; }
   .pr-h1 { font-size: 23px; margin: 0 0 8px; }
-  .pr-sub { opacity: .85; line-height: 1.6; margin: 0 0 18px; }
+  .pr-sub { opacity: .85; line-height: 1.6; margin: 0 0 20px; }
+  .pr-actions { display: flex; flex-direction: column; gap: 10px; align-items: stretch; }
   .pr-btn { display: inline-block; padding: 11px 20px; border-radius: 10px; background: var(--accent,#6b8f71); color: #fff; text-decoration: none; font-weight: 600; }
+  .pr-btn-ghost { background: transparent; color: var(--ink,#222); border: 1px solid color-mix(in srgb, var(--ink,#000) 22%, transparent); }
 </style>
