{"id":7283,"date":"2026-11-04T14:46:13","date_gmt":"2026-11-04T13:46:13","guid":{"rendered":"https:\/\/www.1pay.ch\/?page_id=7283"},"modified":"2026-11-04T18:39:53","modified_gmt":"2026-11-04T17:39:53","slug":"qr-bill-generator","status":"publish","type":"page","link":"https:\/\/www.1pay.ch\/en\/qr-bill-generator\/","title":{"rendered":"QR-bill generator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"7283\" class=\"elementor elementor-7283 elementor-7277\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4523734 op-mhero elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4523734\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-650ef76\" data-id=\"650ef76\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6460258 elementor-widget elementor-widget-heading\" data-id=\"6460258\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Create your Swiss QR-bill for free<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1b9aabd elementor-widget elementor-widget-text-editor\" data-id=\"1b9aabd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Enter your account, the amount and who pays: the payment part with its QR code is ready to print or save as a PDF, following the SIX rules in force from 14 November 2026.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-6fdd61b op-tool elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"6fdd61b\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-224650e\" data-id=\"224650e\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-fda6617 op-tool elementor-widget elementor-widget-html\" data-id=\"fda6617\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"opc\" id=\"opq\">\n<style>\n.opc{--n:#1D3D78;--b:#27509C;--sky:#EAF1FB;--ink:#2A2F33;--sl:#5B6B70;--ln:#D5DCE2;--soft:#F4F6F8;--er:#B42318;--ok:#2E7D5B;font-family:Poppins,Arial,sans-serif;color:var(--ink);max-width:1140px;margin:0 auto;text-align:left;container-type:inline-size}\n.opc *{box-sizing:border-box}\n.opc [hidden]{display:none!important}\n.opc-card{background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(16,24,40,.08);padding:28px;display:grid;gap:26px}\n.opc-card>*{min-width:0}\n.opc-cols{display:grid;gap:22px}\n.opc-sec{display:grid;gap:12px;align-content:start}\n.opc .opc-h{font-size:1.02rem;font-weight:600;color:var(--n);margin:0;line-height:1.3}\n.opc .opc-h b{color:var(--b);font-weight:600;margin-right:8px}\n.opc-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}\n.opc-grid>label{grid-column:span 6}\n.opc-grid>.w3{grid-column:span 3}.opc-grid>.w4{grid-column:span 4}.opc-grid>.w2{grid-column:span 2}\n.opc fieldset{border:0;margin:0;padding:0;min-width:0}\n.opc legend,.opc label>span:first-child{display:block;font-size:.82rem;font-weight:600;color:var(--sl);margin:0 0 6px;padding:0;line-height:1.3}\n.opc label{display:flex;flex-direction:column;min-width:0}\n#opq#opq.opc input{font:inherit;font-size:.98rem!important;color:var(--ink)!important;border:1px solid var(--ln)!important;border-radius:10px!important;padding:0 12px!important;height:44px!important;min-height:44px!important;background-color:#fff!important;width:100%;box-shadow:none!important;margin:0}\n#opq#opq.opc input[aria-invalid=\"true\"]{border-color:var(--er)!important}\n#opq#opq.opc .opc-pre input{padding-left:52px!important}\n.opc-pre{position:relative;display:block}\n.opc-pre i{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-style:normal;font-size:.9rem;font-weight:600;color:var(--sl);pointer-events:none}\n.opc-seg{display:flex;flex-wrap:wrap;gap:3px;padding:3px;border:1px solid var(--ln);border-radius:12px;background:var(--soft)}\n#opq.opc .opc-seg button{flex:1 1 auto;border:0;background:transparent;border-radius:9px;padding:0 12px;min-height:38px;font:inherit;font-size:.86rem;font-weight:600;color:var(--sl);cursor:pointer;text-transform:none;letter-spacing:0;box-shadow:none;line-height:1.2}\n#opq.opc .opc-seg button:hover{color:var(--n);background:#fff}\n#opq.opc .opc-seg button[aria-pressed=\"true\"]{background:var(--n);color:#fff}\n.opc .opc-lh{display:flex!important;justify-content:space-between;align-items:baseline;gap:8px}\n.opc .opc-cnt{font-size:.74rem;font-weight:400;color:var(--sl);font-variant-numeric:tabular-nums;white-space:nowrap;opacity:0;transition:opacity .35s ease}\n.opc .opc-cnt.on{opacity:1;transition-duration:.12s}\n.opc label{position:relative}\n.opc .opc-lt{display:inline-flex;align-items:center;gap:6px}\n#opq#opq.opc .opc-tip{flex:none;width:17px;height:17px;min-height:0;border-radius:50%;border:0;background:var(--b);color:#fff;font:600 11px\/17px Poppins,Arial,sans-serif;padding:0;margin:0;cursor:help;display:inline-grid;place-items:center;box-shadow:none;text-transform:none;letter-spacing:0;transition:background .15s}\n#opq#opq.opc .opc-tip:hover,#opq#opq.opc .opc-tip[aria-expanded=\"true\"]{background:var(--n)}\n.opc .opc-tipb{position:absolute;left:0;right:0;top:calc(1.3em + 10px);z-index:30;background:var(--n);color:#fff;font-size:.8rem;font-weight:400;line-height:1.5;padding:10px 12px;border-radius:10px;box-shadow:0 10px 24px rgba(16,24,40,.2);max-width:360px}\n.opc .opc-tipb::before{content:\"\";position:absolute;top:-5px;left:var(--ax,14px);border:5px solid transparent;border-top:0;border-bottom-color:var(--n)}\n.opc .opc-err{font-size:.8rem;color:var(--er);margin:6px 0 0;line-height:1.45;font-weight:600}\n#opq#opq.opc select{font:inherit;font-size:.98rem!important;color:var(--ink)!important;border:1px solid var(--ln)!important;border-radius:10px!important;padding:0 34px 0 12px!important;height:44px!important;min-height:44px!important;width:100%;box-shadow:none!important;margin:0;-webkit-appearance:none!important;appearance:none!important;cursor:pointer;background:#fff url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' fill='none' stroke='%231D3D78' stroke-width='2'%3E%3Cpath d='m1 1.5 5 5 5-5'\/%3E%3C\/svg%3E\") no-repeat right 12px center!important}\n#opq#opq.opc select[aria-invalid=\"true\"]{border-color:var(--er)!important}\n.opc-st.in{background:var(--sky);color:var(--n)}\n#opq.opc button:focus-visible,.opc select:focus-visible,.opc input:focus-visible{outline:2px solid var(--b);outline-offset:2px}\n.opc .opc-hint{font-size:.8rem;color:var(--sl);margin:6px 0 0;line-height:1.45}\n.opc-out{display:grid;gap:14px}\n.opc-slip{border:1px solid var(--ln);border-radius:10px;overflow:auto;background:#fff}\n.opc-slip svg{display:block;width:100%;min-width:560px;height:auto}\n.opc-slip.bad svg{opacity:.45}\n.opc-st{border-radius:12px;padding:14px 16px;font-size:.9rem;line-height:1.5}\n.opc-st.ok{background:#E8F4EE;color:var(--ok)}\n.opc-st.er{background:#FDECEA;color:var(--er)}\n.opc-st ul{margin:6px 0 0;padding-left:18px}\n.opc-act{display:flex;flex-wrap:wrap;gap:10px}\n#opq.opc .opc-act button{flex:1 1 200px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:12px;padding:0 18px;font:inherit;font-size:.92rem;font-weight:600;cursor:pointer;border:1px solid var(--b);background:#fff;color:var(--b);text-transform:none;letter-spacing:0;box-shadow:none}\n#opq.opc .opc-act .pri{background:var(--b);color:#fff}\n#opq.opc .opc-act button:disabled{opacity:.45;cursor:not-allowed}\n#opq.opc .opc-lk{border:0;background:none;padding:0;font:inherit;font-size:.82rem;font-weight:600;color:var(--b);cursor:pointer;text-transform:none;letter-spacing:0;box-shadow:none;min-height:0}\n.opc .opc-note{font-size:.82rem;color:var(--sl);margin:0;line-height:1.55}\n.opc .opc-note a{color:var(--b);font-weight:600}\n@container (min-width:900px){.opc-cols{grid-template-columns:repeat(3,minmax(0,1fr))}.opc-card{padding:32px}}\n@container (max-width:300px){.opc-grid>.w3,.opc-grid>.w4,.opc-grid>.w2{grid-column:span 6}}\n@media (max-width:767px){.opc-card{padding:22px 16px}}\n<\/style>\n<div class=\"opc-card\" id=\"opq-card\"><\/div>\n<script>\n\/* qrcode-generator 1.4.4, MIT License, https:\/\/github.com\/kazuhikoarase\/qrcode-generator *\/\nvar qrcode=function(){function i(t,r){function a(t,r){g=function(t){for(var r=new Array(t),e=0;e<t;e+=1){r[e]=new Array(t);for(var n=0;n<t;n+=1)r[e][n]=null}return r}(l=4*u+17),e(0,0),e(l-7,0),e(0,l-7),i(),o(),v(t,r),7<=u&&h(t),null==n&&(n=w(u,f,c)),d(n,r)}var u=t,f=y[r],g=null,l=0,n=null,c=[],s={},e=function(t,r){for(var e=-1;e<=7;e+=1)if(!(t+e<=-1||l<=t+e))for(var n=-1;n<=7;n+=1)r+n<=-1||l<=r+n||(g[t+e][r+n]=0<=e&&e<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==e||6==e)||2<=e&&e<=4&&2<=n&&n<=4)},o=function(){for(var t=8;t<l-8;t+=1)null==g[t][6]&&(g[t][6]=t%2==0);for(var r=8;r<l-8;r+=1)null==g[6][r]&&(g[6][r]=r%2==0)},i=function(){for(var t=B.getPatternPosition(u),r=0;r<t.length;r+=1)for(var e=0;e<t.length;e+=1){var n=t[r],o=t[e];if(null==g[n][o])for(var i=-2;i<=2;i+=1)for(var a=-2;a<=2;a+=1)g[n+i][o+a]=-2==i||2==i||-2==a||2==a||0==i&&0==a}},h=function(t){for(var r=B.getBCHTypeNumber(u),e=0;e<18;e+=1){var n=!t&&1==(r>>e&1);g[Math.floor(e\/3)][e%3+l-8-3]=n}for(e=0;e<18;e+=1){n=!t&&1==(r>>e&1);g[e%3+l-8-3][Math.floor(e\/3)]=n}},v=function(t,r){for(var e=f<<3|r,n=B.getBCHTypeInfo(e),o=0;o<15;o+=1){var i=!t&&1==(n>>o&1);o<6?g[o][8]=i:o<8?g[o+1][8]=i:g[l-15+o][8]=i}for(o=0;o<15;o+=1){i=!t&&1==(n>>o&1);o<8?g[8][l-o-1]=i:o<9?g[8][15-o-1+1]=i:g[8][15-o-1]=i}g[l-8][8]=!t},d=function(t,r){for(var e=-1,n=l-1,o=7,i=0,a=B.getMaskFunction(r),u=l-1;0<u;u-=2)for(6==u&&(u-=1);;){for(var f=0;f<2;f+=1)if(null==g[n][u-f]){var c=!1;i<t.length&&(c=1==(t[i]>>>o&1)),a(n,u-f)&&(c=!c),g[n][u-f]=c,-1==(o-=1)&&(i+=1,o=7)}if((n+=e)<0||l<=n){n-=e,e=-e;break}}},w=function(t,r,e){for(var n=b.getRSBlocks(t,r),o=M(),i=0;i<e.length;i+=1){var a=e[i];o.put(a.getMode(),4),o.put(a.getLength(),B.getLengthInBits(a.getMode(),t)),a.write(o)}var u=0;for(i=0;i<n.length;i+=1)u+=n[i].dataCount;if(o.getLengthInBits()>8*u)throw\"code length overflow. (\"+o.getLengthInBits()+\">\"+8*u+\")\";for(o.getLengthInBits()+4<=8*u&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;!(o.getLengthInBits()>=8*u||(o.put(236,8),o.getLengthInBits()>=8*u));)o.put(17,8);return function(t,r){for(var e=0,n=0,o=0,i=new Array(r.length),a=new Array(r.length),u=0;u<r.length;u+=1){var f=r[u].dataCount,c=r[u].totalCount-f;n=Math.max(n,f),o=Math.max(o,c),i[u]=new Array(f);for(var g=0;g<i[u].length;g+=1)i[u][g]=255&t.getBuffer()[g+e];e+=f;var l=B.getErrorCorrectPolynomial(c),h=C(i[u],l.getLength()-1).mod(l);a[u]=new Array(l.getLength()-1);for(g=0;g<a[u].length;g+=1){var s=g+h.getLength()-a[u].length;a[u][g]=0<=s?h.getAt(s):0}}var v=0;for(g=0;g<r.length;g+=1)v+=r[g].totalCount;var d=new Array(v),w=0;for(g=0;g<n;g+=1)for(u=0;u<r.length;u+=1)g<i[u].length&&(d[w]=i[u][g],w+=1);for(g=0;g<o;g+=1)for(u=0;u<r.length;u+=1)g<a[u].length&&(d[w]=a[u][g],w+=1);return d}(o,n)};s.addData=function(t,r){var e=null;switch(r=r||\"Byte\"){case\"Numeric\":e=x(t);break;case\"Alphanumeric\":e=m(t);break;case\"Byte\":e=L(t);break;case\"Kanji\":e=D(t);break;default:throw\"mode:\"+r}c.push(e),n=null},s.isDark=function(t,r){if(t<0||l<=t||r<0||l<=r)throw t+\",\"+r;return g[t][r]},s.getModuleCount=function(){return l},s.make=function(){if(u<1){for(var t=1;t<40;t++){for(var r=b.getRSBlocks(t,f),e=M(),n=0;n<c.length;n++){var o=c[n];e.put(o.getMode(),4),e.put(o.getLength(),B.getLengthInBits(o.getMode(),t)),o.write(e)}var i=0;for(n=0;n<r.length;n++)i+=r[n].dataCount;if(e.getLengthInBits()<=8*i)break}u=t}a(!1,function(){for(var t=0,r=0,e=0;e<8;e+=1){a(!0,e);var n=B.getLostPoint(s);(0==e||n<t)&&(t=n,r=e)}return r}())},s.createTableTag=function(t,r){t=t||2;var e=\"\";e+='<table style=\"',e+=\" border-width: 0px; border-style: none;\",e+=\" border-collapse: collapse;\",e+=\" padding: 0px; margin: \"+(r=void 0===r?4*t:r)+\"px;\",e+='\">',e+=\"<tbody>\";for(var n=0;n<s.getModuleCount();n+=1){e+=\"<tr>\";for(var o=0;o<s.getModuleCount();o+=1)e+='<td style=\"',e+=\" border-width: 0px; border-style: none;\",e+=\" border-collapse: collapse;\",e+=\" padding: 0px; margin: 0px;\",e+=\" width: \"+t+\"px;\",e+=\" height: \"+t+\"px;\",e+=\" background-color: \",e+=s.isDark(n,o)?\"#000000\":\"#ffffff\",e+=\";\",e+='\"\/>';e+=\"<\/tr>\"}return e+=\"<\/tbody>\",e+=\"<\/table>\"},s.createSvgTag=function(t,r,e,n){var o={};\"object\"==typeof t&&(t=(o=t).cellSize,r=o.margin,e=o.alt,n=o.title),t=t||2,r=void 0===r?4*t:r,(e=\"string\"==typeof e?{text:e}:e||{}).text=e.text||null,e.id=e.text?e.id||\"qrcode-description\":null,(n=\"string\"==typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||\"qrcode-title\":null;var i,a,u,f,c=s.getModuleCount()*t+2*r,g=\"\";for(f=\"l\"+t+\",0 0,\"+t+\" -\"+t+\",0 0,-\"+t+\"z \",g+='<svg version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"',g+=o.scalable?\"\":' width=\"'+c+'px\" height=\"'+c+'px\"',g+=' viewBox=\"0 0 '+c+\" \"+c+'\" ',g+=' preserveAspectRatio=\"xMinYMin meet\"',g+=n.text||e.text?' role=\"img\" aria-labelledby=\"'+p([n.id,e.id].join(\" \").trim())+'\"':\"\",g+=\">\",g+=n.text?'<title id=\"'+p(n.id)+'\">'+p(n.text)+\"<\/title>\":\"\",g+=e.text?'<description id=\"'+p(e.id)+'\">'+p(e.text)+\"<\/description>\":\"\",g+='<rect width=\"100%\" height=\"100%\" fill=\"white\" cx=\"0\" cy=\"0\"\/>',g+='<path d=\"',a=0;a<s.getModuleCount();a+=1)for(u=a*t+r,i=0;i<s.getModuleCount();i+=1)s.isDark(a,i)&&(g+=\"M\"+(i*t+r)+\",\"+u+f);return g+='\" stroke=\"transparent\" fill=\"black\"\/>',g+=\"<\/svg>\"},s.createDataURL=function(o,t){o=o||2,t=void 0===t?4*o:t;var r=s.getModuleCount()*o+2*t,i=t,a=r-t;return I(r,r,function(t,r){if(i<=t&&t<a&&i<=r&&r<a){var e=Math.floor((t-i)\/o),n=Math.floor((r-i)\/o);return s.isDark(n,e)?0:1}return 1})},s.createImgTag=function(t,r,e){t=t||2,r=void 0===r?4*t:r;var n=s.getModuleCount()*t+2*r,o=\"\";return o+=\"<img\",o+=' src=\"',o+=s.createDataURL(t,r),o+='\"',o+=' width=\"',o+=n,o+='\"',o+=' height=\"',o+=n,o+='\"',e&&(o+=' alt=\"',o+=p(e),o+='\"'),o+=\"\/>\"};var p=function(t){for(var r=\"\",e=0;e<t.length;e+=1){var n=t.charAt(e);switch(n){case\"<\":r+=\"&lt;\";break;case\">\":r+=\"&gt;\";break;case\"&\":r+=\"&amp;\";break;case'\"':r+=\"&quot;\";break;default:r+=n}}return r};return s.createASCII=function(t,r){if((t=t||1)<2)return function(t){t=void 0===t?2:t;var r,e,n,o,i,a=1*s.getModuleCount()+2*t,u=t,f=a-t,c={\"\u2588\u2588\":\"\u2588\",\"\u2588 \":\"\u2580\",\" \u2588\":\"\u2584\",\"  \":\" \"},g={\"\u2588\u2588\":\"\u2580\",\"\u2588 \":\"\u2580\",\" \u2588\":\" \",\"  \":\" \"},l=\"\";for(r=0;r<a;r+=2){for(n=Math.floor((r-u)\/1),o=Math.floor((r+1-u)\/1),e=0;e<a;e+=1)i=\"\u2588\",u<=e&&e<f&&u<=r&&r<f&&s.isDark(n,Math.floor((e-u)\/1))&&(i=\" \"),u<=e&&e<f&&u<=r+1&&r+1<f&&s.isDark(o,Math.floor((e-u)\/1))?i+=\" \":i+=\"\u2588\",l+=t<1&&f<=r+1?g[i]:c[i];l+=\"\\n\"}return a%2&&0<t?l.substring(0,l.length-a-1)+Array(1+a).join(\"\u2580\"):l.substring(0,l.length-1)}(r);t-=1,r=void 0===r?2*t:r;var e,n,o,i,a=s.getModuleCount()*t+2*r,u=r,f=a-r,c=Array(t+1).join(\"\u2588\u2588\"),g=Array(t+1).join(\"  \"),l=\"\",h=\"\";for(e=0;e<a;e+=1){for(o=Math.floor((e-u)\/t),h=\"\",n=0;n<a;n+=1)i=1,u<=n&&n<f&&u<=e&&e<f&&s.isDark(o,Math.floor((n-u)\/t))&&(i=0),h+=i?c:g;for(o=0;o<t;o+=1)l+=h+\"\\n\"}return l.substring(0,l.length-1)},s.renderTo2dContext=function(t,r){r=r||2;for(var e=s.getModuleCount(),n=0;n<e;n++)for(var o=0;o<e;o++)t.fillStyle=s.isDark(n,o)?\"black\":\"white\",t.fillRect(n*r,o*r,r,r)},s}i.stringToBytes=(i.stringToBytesFuncs={default:function(t){for(var r=[],e=0;e<t.length;e+=1){var n=t.charCodeAt(e);r.push(255&n)}return r}}).default,i.createStringToBytes=function(u,f){var i=function(){function t(){var t=r.read();if(-1==t)throw\"eof\";return t}for(var r=S(u),e=0,n={};;){var o=r.read();if(-1==o)break;var i=t(),a=t()<<8|t();n[String.fromCharCode(o<<8|i)]=a,e+=1}if(e!=f)throw e+\" != \"+f;return n}(),a=\"?\".charCodeAt(0);return function(t){for(var r=[],e=0;e<t.length;e+=1){var n=t.charCodeAt(e);if(n<128)r.push(n);else{var o=i[t.charAt(e)];\"number\"==typeof o?(255&o)==o?r.push(o):(r.push(o>>>8),r.push(255&o)):r.push(a)}}return r}};var r,t,a=1,u=2,o=4,f=8,y={L:1,M:0,Q:3,H:2},e=0,n=1,c=2,g=3,l=4,h=5,s=6,v=7,B=(r=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],(t={}).getBCHTypeInfo=function(t){for(var r=t<<10;0<=d(r)-d(1335);)r^=1335<<d(r)-d(1335);return 21522^(t<<10|r)},t.getBCHTypeNumber=function(t){for(var r=t<<12;0<=d(r)-d(7973);)r^=7973<<d(r)-d(7973);return t<<12|r},t.getPatternPosition=function(t){return r[t-1]},t.getMaskFunction=function(t){switch(t){case e:return function(t,r){return(t+r)%2==0};case n:return function(t,r){return t%2==0};case c:return function(t,r){return r%3==0};case g:return function(t,r){return(t+r)%3==0};case l:return function(t,r){return(Math.floor(t\/2)+Math.floor(r\/3))%2==0};case h:return function(t,r){return t*r%2+t*r%3==0};case s:return function(t,r){return(t*r%2+t*r%3)%2==0};case v:return function(t,r){return(t*r%3+(t+r)%2)%2==0};default:throw\"bad maskPattern:\"+t}},t.getErrorCorrectPolynomial=function(t){for(var r=C([1],0),e=0;e<t;e+=1)r=r.multiply(C([1,w.gexp(e)],0));return r},t.getLengthInBits=function(t,r){if(1<=r&&r<10)switch(t){case a:return 10;case u:return 9;case o:case f:return 8;default:throw\"mode:\"+t}else if(r<27)switch(t){case a:return 12;case u:return 11;case o:return 16;case f:return 10;default:throw\"mode:\"+t}else{if(!(r<41))throw\"type:\"+r;switch(t){case a:return 14;case u:return 13;case o:return 16;case f:return 12;default:throw\"mode:\"+t}}},t.getLostPoint=function(t){for(var r=t.getModuleCount(),e=0,n=0;n<r;n+=1)for(var o=0;o<r;o+=1){for(var i=0,a=t.isDark(n,o),u=-1;u<=1;u+=1)if(!(n+u<0||r<=n+u))for(var f=-1;f<=1;f+=1)o+f<0||r<=o+f||0==u&&0==f||a==t.isDark(n+u,o+f)&&(i+=1);5<i&&(e+=3+i-5)}for(n=0;n<r-1;n+=1)for(o=0;o<r-1;o+=1){var c=0;t.isDark(n,o)&&(c+=1),t.isDark(n+1,o)&&(c+=1),t.isDark(n,o+1)&&(c+=1),t.isDark(n+1,o+1)&&(c+=1),0!=c&&4!=c||(e+=3)}for(n=0;n<r;n+=1)for(o=0;o<r-6;o+=1)t.isDark(n,o)&&!t.isDark(n,o+1)&&t.isDark(n,o+2)&&t.isDark(n,o+3)&&t.isDark(n,o+4)&&!t.isDark(n,o+5)&&t.isDark(n,o+6)&&(e+=40);for(o=0;o<r;o+=1)for(n=0;n<r-6;n+=1)t.isDark(n,o)&&!t.isDark(n+1,o)&&t.isDark(n+2,o)&&t.isDark(n+3,o)&&t.isDark(n+4,o)&&!t.isDark(n+5,o)&&t.isDark(n+6,o)&&(e+=40);var g=0;for(o=0;o<r;o+=1)for(n=0;n<r;n+=1)t.isDark(n,o)&&(g+=1);return e+=Math.abs(100*g\/r\/r-50)\/5*10},t);function d(t){for(var r=0;0!=t;)r+=1,t>>>=1;return r}var w=function(){for(var r=new Array(256),e=new Array(256),t=0;t<8;t+=1)r[t]=1<<t;for(t=8;t<256;t+=1)r[t]=r[t-4]^r[t-5]^r[t-6]^r[t-8];for(t=0;t<255;t+=1)e[r[t]]=t;var n={glog:function(t){if(t<1)throw\"glog(\"+t+\")\";return e[t]},gexp:function(t){for(;t<0;)t+=255;for(;256<=t;)t-=255;return r[t]}};return n}();function C(n,o){if(void 0===n.length)throw n.length+\"\/\"+o;var r=function(){for(var t=0;t<n.length&&0==n[t];)t+=1;for(var r=new Array(n.length-t+o),e=0;e<n.length-t;e+=1)r[e]=n[e+t];return r}(),i={getAt:function(t){return r[t]},getLength:function(){return r.length},multiply:function(t){for(var r=new Array(i.getLength()+t.getLength()-1),e=0;e<i.getLength();e+=1)for(var n=0;n<t.getLength();n+=1)r[e+n]^=w.gexp(w.glog(i.getAt(e))+w.glog(t.getAt(n)));return C(r,0)},mod:function(t){if(i.getLength()-t.getLength()<0)return i;for(var r=w.glog(i.getAt(0))-w.glog(t.getAt(0)),e=new Array(i.getLength()),n=0;n<i.getLength();n+=1)e[n]=i.getAt(n);for(n=0;n<t.getLength();n+=1)e[n]^=w.gexp(w.glog(t.getAt(n))+r);return C(e,0).mod(t)}};return i}function p(){var e=[],o={writeByte:function(t){e.push(255&t)},writeShort:function(t){o.writeByte(t),o.writeByte(t>>>8)},writeBytes:function(t,r,e){r=r||0,e=e||t.length;for(var n=0;n<e;n+=1)o.writeByte(t[n+r])},writeString:function(t){for(var r=0;r<t.length;r+=1)o.writeByte(t.charCodeAt(r))},toByteArray:function(){return e},toString:function(){var t=\"\";t+=\"[\";for(var r=0;r<e.length;r+=1)0<r&&(t+=\",\"),t+=e[r];return t+=\"]\"}};return o}var k,A,b=(k=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],(A={}).getRSBlocks=function(t,r){var e=function(t,r){switch(r){case y.L:return k[4*(t-1)+0];case y.M:return k[4*(t-1)+1];case y.Q:return k[4*(t-1)+2];case y.H:return k[4*(t-1)+3];default:return}}(t,r);if(void 0===e)throw\"bad rs block @ typeNumber:\"+t+\"\/errorCorrectionLevel:\"+r;for(var n,o,i=e.length\/3,a=[],u=0;u<i;u+=1)for(var f=e[3*u+0],c=e[3*u+1],g=e[3*u+2],l=0;l<f;l+=1)a.push((n=g,o=void 0,(o={}).totalCount=c,o.dataCount=n,o));return a},A),M=function(){var e=[],n=0,o={getBuffer:function(){return e},getAt:function(t){var r=Math.floor(t\/8);return 1==(e[r]>>>7-t%8&1)},put:function(t,r){for(var e=0;e<r;e+=1)o.putBit(1==(t>>>r-e-1&1))},getLengthInBits:function(){return n},putBit:function(t){var r=Math.floor(n\/8);e.length<=r&&e.push(0),t&&(e[r]|=128>>>n%8),n+=1}};return o},x=function(t){var r=a,n=t,e={getMode:function(){return r},getLength:function(t){return n.length},write:function(t){for(var r=n,e=0;e+2<r.length;)t.put(o(r.substring(e,e+3)),10),e+=3;e<r.length&&(r.length-e==1?t.put(o(r.substring(e,e+1)),4):r.length-e==2&&t.put(o(r.substring(e,e+2)),7))}},o=function(t){for(var r=0,e=0;e<t.length;e+=1)r=10*r+i(t.charAt(e));return r},i=function(t){if(\"0\"<=t&&t<=\"9\")return t.charCodeAt(0)-\"0\".charCodeAt(0);throw\"illegal char :\"+t};return e},m=function(t){var r=u,n=t,e={getMode:function(){return r},getLength:function(t){return n.length},write:function(t){for(var r=n,e=0;e+1<r.length;)t.put(45*o(r.charAt(e))+o(r.charAt(e+1)),11),e+=2;e<r.length&&t.put(o(r.charAt(e)),6)}},o=function(t){if(\"0\"<=t&&t<=\"9\")return t.charCodeAt(0)-\"0\".charCodeAt(0);if(\"A\"<=t&&t<=\"Z\")return t.charCodeAt(0)-\"A\".charCodeAt(0)+10;switch(t){case\" \":return 36;case\"$\":return 37;case\"%\":return 38;case\"*\":return 39;case\"+\":return 40;case\"-\":return 41;case\".\":return 42;case\"\/\":return 43;case\":\":return 44;default:throw\"illegal char :\"+t}};return e},L=function(t){var r=o,e=i.stringToBytes(t),n={getMode:function(){return r},getLength:function(t){return e.length},write:function(t){for(var r=0;r<e.length;r+=1)t.put(e[r],8)}};return n},D=function(t){var r=f,e=i.stringToBytesFuncs.SJIS;if(!e)throw\"sjis not supported.\";!function(){var t=e(\"\u53cb\");if(2!=t.length||38726!=(t[0]<<8|t[1]))throw\"sjis not supported.\"}();var o=e(t),n={getMode:function(){return r},getLength:function(t){return~~(o.length\/2)},write:function(t){for(var r=o,e=0;e+1<r.length;){var n=(255&r[e])<<8|255&r[e+1];if(33088<=n&&n<=40956)n-=33088;else{if(!(57408<=n&&n<=60351))throw\"illegal char at \"+(e+1)+\"\/\"+n;n-=49472}n=192*(n>>>8&255)+(255&n),t.put(n,13),e+=2}if(e<r.length)throw\"illegal char at \"+(e+1)}};return n},S=function(t){var e=t,n=0,o=0,i=0,r={read:function(){for(;i<8;){if(n>=e.length){if(0==i)return-1;throw\"unexpected end of file.\/\"+i}var t=e.charAt(n);if(n+=1,\"=\"==t)return i=0,-1;t.match(\/^\\s$\/)||(o=o<<6|a(t.charCodeAt(0)),i+=6)}var r=o>>>i-8&255;return i-=8,r}},a=function(t){if(65<=t&&t<=90)return t-65;if(97<=t&&t<=122)return t-97+26;if(48<=t&&t<=57)return t-48+52;if(43==t)return 62;if(47==t)return 63;throw\"c:\"+t};return r},I=function(t,r,e){for(var n=function(t,r){var n=t,o=r,l=new Array(t*r),e={setPixel:function(t,r,e){l[r*n+t]=e},write:function(t){t.writeString(\"GIF87a\"),t.writeShort(n),t.writeShort(o),t.writeByte(128),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(255),t.writeByte(255),t.writeByte(255),t.writeString(\",\"),t.writeShort(0),t.writeShort(0),t.writeShort(n),t.writeShort(o),t.writeByte(0);var r=i(2);t.writeByte(2);for(var e=0;255<r.length-e;)t.writeByte(255),t.writeBytes(r,e,255),e+=255;t.writeByte(r.length-e),t.writeBytes(r,e,r.length-e),t.writeByte(0),t.writeString(\";\")}},i=function(t){for(var r=1<<t,e=1+(1<<t),n=t+1,o=h(),i=0;i<r;i+=1)o.add(String.fromCharCode(i));o.add(String.fromCharCode(r)),o.add(String.fromCharCode(e));var a=p(),u=function(t){var e=t,n=0,o=0,r={write:function(t,r){if(t>>>r!=0)throw\"length over\";for(;8<=n+r;)e.writeByte(255&(t<<n|o)),r-=8-n,t>>>=8-n,n=o=0;o|=t<<n,n+=r},flush:function(){0<n&&e.writeByte(o)}};return r}(a);u.write(r,n);var f=0,c=String.fromCharCode(l[f]);for(f+=1;f<l.length;){var g=String.fromCharCode(l[f]);f+=1,o.contains(c+g)?c+=g:(u.write(o.indexOf(c),n),o.size()<4095&&(o.size()==1<<n&&(n+=1),o.add(c+g)),c=g)}return u.write(o.indexOf(c),n),u.write(e,n),u.flush(),a.toByteArray()},h=function(){var r={},e=0,n={add:function(t){if(n.contains(t))throw\"dup key:\"+t;r[t]=e,e+=1},size:function(){return e},indexOf:function(t){return r[t]},contains:function(t){return void 0!==r[t]}};return n};return e}(t,r),o=0;o<r;o+=1)for(var i=0;i<t;i+=1)n.setPixel(i,o,e(i,o));var a=p();n.write(a);for(var u=function(){function e(t){a+=String.fromCharCode(r(63&t))}var n=0,o=0,i=0,a=\"\",t={},r=function(t){if(t<0);else{if(t<26)return 65+t;if(t<52)return t-26+97;if(t<62)return t-52+48;if(62==t)return 43;if(63==t)return 47}throw\"n:\"+t};return t.writeByte=function(t){for(n=n<<8|255&t,o+=8,i+=1;6<=o;)e(n>>>o-6),o-=6},t.flush=function(){if(0<o&&(e(n<<6-o),o=n=0),i%3!=0)for(var t=3-i%3,r=0;r<t;r+=1)a+=\"=\"},t.toString=function(){return a},t}(),f=a.toByteArray(),c=0;c<f.length;c+=1)u.writeByte(f[c]);return u.flush(),\"data:image\/gif;base64,\"+u};return i}();qrcode.stringToBytesFuncs[\"UTF-8\"]=function(t){return function(t){for(var r=[],e=0;e<t.length;e++){var n=t.charCodeAt(e);n<128?r.push(n):n<2048?r.push(192|n>>6,128|63&n):n<55296||57344<=n?r.push(224|n>>12,128|n>>6&63,128|63&n):(e++,n=65536+((1023&n)<<10|1023&t.charCodeAt(e)),r.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return r}(t)},function(t){\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports&&(module.exports=t())}(function(){return qrcode});\n(function(){\nvar card=document.getElementById('opq-card'),L=(document.documentElement.lang||'it').slice(0,2);\n\/\/ Regole: SIX, Swiss Implementation Guidelines for the QR-bill v2.4 (in vigore dal 14.11.2026). Solo indirizzi strutturati (S).\nvar SL={ \/\/ diciture ufficiali della sezione di pagamento (Annex C)\nit:{pp:'Sezione pagamento',rc:'Ricevuta',acc:'Conto \/ Pagabile a',ref:'Riferimento',add:'Informazioni supplementari',by:'Pagabile da',byx:'Pagabile da (nome\/indirizzo)',ccy:'Valuta',amt:'Importo',ap:'Punto di accettazione',cut:'Da staccare prima del versamento'},\nde:{pp:'Zahlteil',rc:'Empfangsschein',acc:'Konto \/ Zahlbar an',ref:'Referenz',add:'Zus\u00e4tzliche Informationen',by:'Zahlbar durch',byx:'Zahlbar durch (Name\/Adresse)',ccy:'W\u00e4hrung',amt:'Betrag',ap:'Annahmestelle',cut:'Vor der Einzahlung abzutrennen'},\nen:{pp:'Payment part',rc:'Receipt',acc:'Account \/ Payable to',ref:'Reference',add:'Additional information',by:'Payable by',byx:'Payable by (name\/address)',ccy:'Currency',amt:'Amount',ap:'Acceptance point',cut:'Separate before paying in'},\nfr:{pp:'Section paiement',rc:'R\u00e9c\u00e9piss\u00e9',acc:'Compte \/ Payable \u00e0',ref:'R\u00e9f\u00e9rence',add:'Informations suppl\u00e9mentaires',by:'Payable par',byx:'Payable par (nom\/adresse)',ccy:'Monnaie',amt:'Montant',ap:'Point de d\u00e9p\u00f4t',cut:'A d\u00e9tacher avant le versement'}};\nvar T={\nit:{g1:'Chi riceve il pagamento',g2:'Importo e riferimento',g3:'Chi paga',iban:'IBAN o QR-IBAN',ibanph:'CH00 0000 0000 0000 0000 0',name:'Nome o ragione sociale',str:'Via',no:'N.',pc:'NPA',town:'Localit\u00e0',ctry:'Paese',\n cur:'Valuta',amt:'Importo',amth:'Lascia vuoto se chi paga deve scriverlo a mano.',refq:'Numero della fattura (solo cifre)',refs:'Numero della fattura o riferimento',refh:'Lascia vuoto se non ti serve un riferimento.',msg:'Comunicazione',msgph:'Es. Fattura 1043 del 4.11.2026',\n dbm:'Dati di chi paga',dbs:[['n','Da scrivere a mano'],['y','Inseriscili']],refqr:'Riferimento QR',refrf:'Creditor Reference',\n ok:'\u2713 Pronta: i dati rispettano le linee guida SIX per la QR-fattura (versione 2.4).',ko:'Da completare:',w_eur:'In EUR l\u2019indirizzo di chi paga e la comunicazione non arrivano alla banca del beneficiario.',print:'Stampa o salva in PDF',svg:'Scarica l\u2019immagine (SVG)',\n e_iban:'IBAN non valido: controlla le cifre.',e_ibanc:'Servono un IBAN svizzero o del Liechtenstein (CH o LI, 21 caratteri).',e_req:'Manca: {f} ({p}).',e_qrr:'Con un QR-IBAN serve il numero della fattura, solo cifre (al massimo 26).',e_qeur:'Con un QR-IBAN si fattura solo in CHF.',\n e_ref:'Riferimento: usa solo lettere e cifre, al massimo 21.',e_amt:'L\u2019importo va da 0.01 a 999 999 999.99.',e_ch:'Carattere non ammesso in {f}: \u00ab{x}\u00bb.',e_ctry:'Paese: due lettere, per esempio CH.',pcdtr:'beneficiario',pdbtr:'chi paga',\n priv:'La fattura viene creata nel tuo browser: non riceviamo n\u00e9 salviamo i dati. I dati del beneficiario restano solo in questo browser, per la prossima volta.',forget:'Cancella i dati salvati',\n warn:'Controlla che IBAN e nome siano quelli del conto: chi paga vede solo questi dati. Stampa al 100%, senza adattare alla pagina.',\n note:'Mandi spesso fatture? <a href=\"\/funzionalita\/fatture\/\">Con le fatture di 1pay.ch<\/a> la QR-fattura \u00e8 gi\u00e0 inclusa nel PDF, insieme al link per pagare con TWINT o con la carta e ai solleciti automatici.'},\nde:{g1:'Wer die Zahlung erh\u00e4lt',g2:'Betrag und Referenz',g3:'Wer bezahlt',iban:'IBAN oder QR-IBAN',ibanph:'CH00 0000 0000 0000 0000 0',name:'Name oder Firma',str:'Strasse',no:'Nr.',pc:'PLZ',town:'Ort',ctry:'Land',\n cur:'W\u00e4hrung',amt:'Betrag',amth:'Leer lassen, wenn die zahlende Person ihn von Hand eintr\u00e4gt.',refq:'Rechnungsnummer (nur Ziffern)',refs:'Rechnungsnummer oder Referenz',refh:'Leer lassen, wenn du keine Referenz brauchst.',msg:'Mitteilung',msgph:'z. B. Rechnung 1043 vom 4.11.2026',\n dbm:'Angaben der zahlenden Person',dbs:[['n','Von Hand auszuf\u00fcllen'],['y','Jetzt eingeben']],refqr:'QR-Referenz',refrf:'Creditor Reference',\n ok:'\u2713 Bereit: Die Angaben entsprechen den SIX-Richtlinien f\u00fcr die QR-Rechnung (Version 2.4).',ko:'Noch zu erg\u00e4nzen:',w_eur:'In EUR werden die Adresse der zahlenden Person und die Mitteilung nicht an die Bank des Empf\u00e4ngers \u00fcbermittelt.',print:'Drucken oder als PDF speichern',svg:'Bild herunterladen (SVG)',\n e_iban:'IBAN ung\u00fcltig: Pr\u00fcfe die Ziffern.',e_ibanc:'Es braucht eine Schweizer oder Liechtensteiner IBAN (CH oder LI, 21 Zeichen).',e_req:'Es fehlt: {f} ({p}).',e_qrr:'Mit einer QR-IBAN braucht es die Rechnungsnummer, nur Ziffern (h\u00f6chstens 26).',e_qeur:'Mit einer QR-IBAN nur in CHF.',\n e_ref:'Referenz: nur Buchstaben und Ziffern, h\u00f6chstens 21.',e_amt:'Der Betrag liegt zwischen 0.01 und 999 999 999.99.',e_ch:'Unzul\u00e4ssiges Zeichen in {f}: \u00ab{x}\u00bb.',e_ctry:'Land: zwei Buchstaben, zum Beispiel CH.',pcdtr:'Empf\u00e4nger',pdbtr:'zahlende Person',\n priv:'Die Rechnung entsteht in deinem Browser: Wir erhalten und speichern keine Daten. Die Angaben des Empf\u00e4ngers bleiben nur in diesem Browser, f\u00fcr das n\u00e4chste Mal.',forget:'Gespeicherte Daten l\u00f6schen',\n warn:'Pr\u00fcfe, ob IBAN und Name zum Konto geh\u00f6ren: Die zahlende Person sieht nur diese Angaben. Drucke in 100%, ohne Anpassen an die Seite.',\n note:'Schreibst du oft Rechnungen? <a href=\"\/de\/funktionen\/rechnungen\/\">Bei den Rechnungen von 1pay.ch<\/a> ist die QR-Rechnung im PDF schon dabei, zusammen mit dem Link zum Bezahlen mit TWINT oder Karte und automatischen Zahlungserinnerungen.'},\nen:{g1:'Who receives the payment',g2:'Amount and reference',g3:'Who pays',iban:'IBAN or QR-IBAN',ibanph:'CH00 0000 0000 0000 0000 0',name:'Name or company',str:'Street',no:'No.',pc:'Postcode',town:'Town',ctry:'Country',\n cur:'Currency',amt:'Amount',amth:'Leave blank if the payer will write it by hand.',refq:'Invoice number (digits only)',refs:'Invoice number or reference',refh:'Leave blank if you do not need a reference.',msg:'Message',msgph:'e.g. Invoice 1043 of 4.11.2026',\n dbm:'Payer\u2019s details',dbs:[['n','To be filled in by hand'],['y','Enter them now']],refqr:'QR reference',refrf:'Creditor Reference',\n ok:'\u2713 Ready: the details meet the SIX guidelines for the QR-bill (version 2.4).',ko:'Still to complete:',w_eur:'In EUR, the payer\u2019s address and the message are not passed on to the payee\u2019s bank.',print:'Print or save as PDF',svg:'Download the image (SVG)',\n e_iban:'Invalid IBAN: check the digits.',e_ibanc:'A Swiss or Liechtenstein IBAN is needed (CH or LI, 21 characters).',e_req:'Missing: {f} ({p}).',e_qrr:'With a QR-IBAN you need the invoice number, digits only (26 at most).',e_qeur:'With a QR-IBAN, invoices are in CHF only.',\n e_ref:'Reference: letters and digits only, 21 at most.',e_amt:'The amount must be between 0.01 and 999 999 999.99.',e_ch:'Character not allowed in {f}: \u00ab{x}\u00bb.',e_ctry:'Country: two letters, for example CH.',pcdtr:'payee',pdbtr:'payer',\n priv:'The bill is created in your browser: we neither receive nor store any data. The payee details stay in this browser only, for next time.',forget:'Clear saved details',\n warn:'Check that the IBAN and name match the account: the payer only sees these details. Print at 100%, without fitting to the page.',\n note:'Send invoices often? <a href=\"\/en\/features\/invoices\/\">With 1pay.ch invoices<\/a> the QR-bill is already included in the PDF, together with a link to pay by TWINT or card and automatic reminders.'},\nfr:{g1:'Qui re\u00e7oit le paiement',g2:'Montant et r\u00e9f\u00e9rence',g3:'Qui paie',iban:'IBAN ou QR-IBAN',ibanph:'CH00 0000 0000 0000 0000 0',name:'Nom ou raison sociale',str:'Rue',no:'N\u00b0',pc:'NPA',town:'Localit\u00e9',ctry:'Pays',\n cur:'Monnaie',amt:'Montant',amth:'Laissez vide si la personne qui paie l\u2019\u00e9crit \u00e0 la main.',refq:'Num\u00e9ro de facture (chiffres seulement)',refs:'Num\u00e9ro de facture ou r\u00e9f\u00e9rence',refh:'Laissez vide si vous n\u2019avez pas besoin de r\u00e9f\u00e9rence.',msg:'Communication',msgph:'p. ex. Facture 1043 du 4.11.2026',\n dbm:'Coordonn\u00e9es de la personne qui paie',dbs:[['n','\u00c0 remplir \u00e0 la main'],['y','Les saisir']],refqr:'R\u00e9f\u00e9rence QR',refrf:'Creditor Reference',\n ok:'\u2713 Pr\u00eate : les donn\u00e9es respectent les directives SIX pour la facture QR (version 2.4).',ko:'\u00c0 compl\u00e9ter :',w_eur:'En EUR, l\u2019adresse de la personne qui paie et la communication ne sont pas transmises \u00e0 la banque du b\u00e9n\u00e9ficiaire.',print:'Imprimer ou enregistrer en PDF',svg:'T\u00e9l\u00e9charger l\u2019image (SVG)',\n e_iban:'IBAN non valide : v\u00e9rifiez les chiffres.',e_ibanc:'Il faut un IBAN suisse ou liechtensteinois (CH ou LI, 21 caract\u00e8res).',e_req:'Il manque : {f} ({p}).',e_qrr:'Avec un QR-IBAN, il faut le num\u00e9ro de facture, en chiffres seulement (26 au maximum).',e_qeur:'Avec un QR-IBAN, la facture est en CHF uniquement.',\n e_ref:'R\u00e9f\u00e9rence : lettres et chiffres seulement, 21 au maximum.',e_amt:'Le montant doit \u00eatre compris entre 0.01 et 999 999 999.99.',e_ch:'Caract\u00e8re non admis dans {f} : \u00ab {x} \u00bb.',e_ctry:'Pays : deux lettres, par exemple CH.',pcdtr:'b\u00e9n\u00e9ficiaire',pdbtr:'personne qui paie',\n priv:'La facture est cr\u00e9\u00e9e dans votre navigateur : nous ne recevons ni n\u2019enregistrons aucune donn\u00e9e. Les donn\u00e9es du b\u00e9n\u00e9ficiaire restent uniquement dans ce navigateur, pour la prochaine fois.',forget:'Effacer les donn\u00e9es enregistr\u00e9es',\n warn:'V\u00e9rifiez que l\u2019IBAN et le nom sont ceux du compte : la personne qui paie ne voit que ces donn\u00e9es. Imprimez \u00e0 100 %, sans ajuster \u00e0 la page.',\n note:'Vous envoyez souvent des factures ? <a href=\"\/fr\/fonctionnalites\/factures\/\">Avec les factures 1pay.ch<\/a>, la facture QR est d\u00e9j\u00e0 incluse dans le PDF, avec le lien pour payer avec TWINT ou par carte et les rappels automatiques.'}};\nvar X={ \/\/ testi aggiunti il 4.11.2026 (validazione per campo, limiti visibili, riferimento spiegato)\nit:{req:'Campo obbligatorio.',info:'Informazioni',pc4:'Il NPA svizzero ha 4 cifre.',h_iban:'21 caratteri, inizia con CH o LI. Gli spazi li aggiungiamo noi.',\n h_refq:'Obbligatorio con un QR-IBAN: solo cifre, al massimo 26. Completiamo il numero con zeri e una cifra di controllo, cos\u00ec la tua banca abbina il pagamento alla fattura.',\n h_refs:'Facoltativo: lettere e cifre, al massimo 21. Lo trasformiamo nel riferimento standard RF, che la tua banca usa per abbinare il pagamento alla fattura. Se non ti serve, lascia vuoto e scrivi il numero nella comunicazione.',\n r_q:'Sulla fattura: {x}.',r_s:'Sulla fattura: {x}, cio\u00e8 \u00abRF\u00bb, 2 cifre di controllo e il tuo numero.',ko2:'Correggi i campi in rosso: il codice QR compare quando i dati sono in regola.',ko3:'Compila i dati: il codice QR compare quando sono completi e in regola.',\n bad:'Carattere non ammesso: \u00ab{x}\u00bb.',e_refs:'Solo lettere e cifre, al massimo 21.',e_refq:'Con un QR-IBAN serve il numero della fattura, solo cifre.',e_ibanc:'Serve un IBAN svizzero o del Liechtenstein: CH o LI e 21 caratteri.',e_amt:'Da 0.01 a 999 999 999.99.',e_qeur:'Con un QR-IBAN si fattura solo in CHF: scegli CHF o usa un IBAN normale.',amth:'Facoltativo: lascia vuoto se chi paga lo scrive a mano. Massimo 999 999 999.99.'},\nde:{req:'Pflichtfeld.',info:'Hinweis',pc4:'Die Schweizer PLZ hat 4 Ziffern.',h_iban:'21 Zeichen, beginnt mit CH oder LI. Die Leerzeichen setzen wir.',\n h_refq:'Pflicht bei einer QR-IBAN: nur Ziffern, h\u00f6chstens 26. Wir erg\u00e4nzen die Nummer mit Nullen und einer Pr\u00fcfziffer, damit deine Bank die Zahlung der Rechnung zuordnet.',\n h_refs:'Freiwillig: Buchstaben und Ziffern, h\u00f6chstens 21. Wir machen daraus die Standardreferenz RF, mit der deine Bank die Zahlung der Rechnung zuordnet. Brauchst du keine, lass das Feld leer und schreib die Nummer in die Mitteilung.',\n r_q:'Auf der Rechnung: {x}.',r_s:'Auf der Rechnung: {x}, also \u00abRF\u00bb, 2 Pr\u00fcfziffern und deine Nummer.',ko2:'Korrigiere die rot markierten Felder: Der QR-Code erscheint, sobald die Angaben stimmen.',ko3:'F\u00fclle die Angaben aus: Der QR-Code erscheint, sobald sie vollst\u00e4ndig und korrekt sind.',\n bad:'Unzul\u00e4ssiges Zeichen: \u00ab{x}\u00bb.',e_refs:'Nur Buchstaben und Ziffern, h\u00f6chstens 21.',e_refq:'Mit einer QR-IBAN braucht es die Rechnungsnummer, nur Ziffern.',e_ibanc:'Es braucht eine Schweizer oder Liechtensteiner IBAN: CH oder LI und 21 Zeichen.',e_amt:'Von 0.01 bis 999 999 999.99.',e_qeur:'Mit einer QR-IBAN nur in CHF: W\u00e4hle CHF oder nimm eine normale IBAN.',amth:'Freiwillig: leer lassen, wenn die zahlende Person ihn von Hand eintr\u00e4gt. H\u00f6chstens 999 999 999.99.'},\nen:{req:'Required.',info:'More information',pc4:'Swiss postcodes have 4 digits.',h_iban:'21 characters, starting with CH or LI. We add the spaces.',\n h_refq:'Required with a QR-IBAN: digits only, 26 at most. We pad the number with zeros and add a check digit so your bank can match the payment to the invoice.',\n h_refs:'Optional: letters and digits, 21 at most. We turn it into the standard RF reference, which your bank uses to match the payment to the invoice. If you do not need it, leave it blank and put the number in the message.',\n r_q:'On the bill: {x}.',r_s:'On the bill: {x}, that is \u00abRF\u00bb, 2 check digits and your number.',ko2:'Correct the fields in red: the QR code appears once the details are valid.',ko3:'Fill in the details: the QR code appears once they are complete and valid.',\n bad:'Character not allowed: \u00ab{x}\u00bb.',e_refs:'Letters and digits only, 21 at most.',e_refq:'With a QR-IBAN you need the invoice number, digits only.',e_ibanc:'A Swiss or Liechtenstein IBAN is needed: CH or LI and 21 characters.',e_amt:'From 0.01 to 999 999 999.99.',e_qeur:'With a QR-IBAN, CHF only: choose CHF or use a regular IBAN.',amth:'Optional: leave blank if the payer writes it by hand. 999 999 999.99 at most.'},\nfr:{req:'Champ obligatoire.',info:'Informations',pc4:'Le NPA suisse a 4 chiffres.',h_iban:'21 caract\u00e8res, commence par CH ou LI. Nous ajoutons les espaces.',\n h_refq:'Obligatoire avec un QR-IBAN : chiffres seulement, 26 au maximum. Nous compl\u00e9tons le num\u00e9ro avec des z\u00e9ros et un chiffre de contr\u00f4le, pour que votre banque associe le paiement \u00e0 la facture.',\n h_refs:'Facultatif : lettres et chiffres, 21 au maximum. Nous le transformons en r\u00e9f\u00e9rence standard RF, que votre banque utilise pour associer le paiement \u00e0 la facture. Si vous n\u2019en avez pas besoin, laissez vide et indiquez le num\u00e9ro dans la communication.',\n r_q:'Sur la facture : {x}.',r_s:'Sur la facture : {x}, soit \u00ab RF \u00bb, 2 chiffres de contr\u00f4le et votre num\u00e9ro.',ko2:'Corrigez les champs en rouge : le code QR appara\u00eet d\u00e8s que les donn\u00e9es sont correctes.',ko3:'Remplissez les donn\u00e9es : le code QR appara\u00eet d\u00e8s qu\u2019elles sont compl\u00e8tes et correctes.',\n bad:'Caract\u00e8re non admis : \u00ab {x} \u00bb.',e_refs:'Lettres et chiffres seulement, 21 au maximum.',e_refq:'Avec un QR-IBAN, il faut le num\u00e9ro de facture, en chiffres seulement.',e_ibanc:'Il faut un IBAN suisse ou liechtensteinois : CH ou LI et 21 caract\u00e8res.',e_amt:'De 0.01 \u00e0 999 999 999.99.',e_qeur:'Avec un QR-IBAN, CHF uniquement : choisissez CHF ou utilisez un IBAN normal.',amth:'Facultatif : laissez vide si la personne qui paie l\u2019\u00e9crit \u00e0 la main. 999 999 999.99 au maximum.'}};\nvar D=T[L]||T.it,Q=SL[L]||SL.it,S={cur:'CHF',db:'n'},KEY='1pay-qrfattura';\n(function(x){for(var k in x)D[k]=x[k]})(X[L]||X.it);\nvar LEN={iban:26,name:70,str:70,no:16,pc:16,town:35,ref:26,msg:140},MAXAMT=999999999.99;\nvar OKCH=\/[^ -~\u00a0-\u017f\u0218-\u021b\u20ac]\/;\nfunction esc(s){return String(s).replace(\/[&<>\"]\/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;'}[c]})}\nfunction f(s,o){return s.replace(\/\\{(\\w)\\}\/g,function(m,k){return o[k]==null?m:o[k]})}\n\/\/ paesi ISO 3166-1, nomi nella lingua della pagina (Intl.DisplayNames); in cima Svizzera, Liechtenstein e paesi vicini\nvar CC='AD AE AF AG AI AL AM AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BJ BL BM BN BO BQ BR BS BT BV BW BY BZ CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CW CX CY CZ DE DJ DK DM DO DZ EC EE EG EH ER ES ET FI FJ FK FM FO FR GA GB GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MF MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW SA SB SC SD SE SG SH SI SJ SK SL SM SN SO SR SS ST SV SX SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ UA UG UM US UY UZ VA VC VE VG VI VN VU WF WS YE YT ZA ZM ZW'.split(' '),TOP=['CH','LI','DE','AT','IT','FR'];\nvar DN=null;try{DN=new Intl.DisplayNames([L],{type:'region'})}catch(e){}\nfunction cn(c){try{return DN?DN.of(c):c}catch(e){return c}}\nvar OPTS=TOP.map(function(c){return '<option value=\"'+c+'\">'+esc(cn(c))+'<\/option>'}).join('')+'<option disabled>\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<\/option>'+\n CC.filter(function(c){return TOP.indexOf(c)<0}).map(function(c){return [c,cn(c)]}).sort(function(a,b){return a[1].localeCompare(b[1],L)}).map(function(c){return '<option value=\"'+c[0]+'\">'+esc(c[1])+'<\/option>'}).join('');\nfunction lab(id,txt){return '<span class=\"opc-lh\"><span class=\"opc-lt\"><span>'+txt+'<\/span><button type=\"button\" class=\"opc-tip\" id=\"opq-i-'+id+'\" data-f=\"'+id+'\" aria-label=\"'+esc(D.info)+'\" aria-expanded=\"false\" aria-controls=\"opq-t-'+id+'\" hidden>i<\/button><\/span><small class=\"opc-cnt\" id=\"opq-c-'+id+'\" aria-hidden=\"true\"><\/small><\/span><span class=\"opc-tipb\" role=\"tooltip\" id=\"opq-t-'+id+'\" hidden><\/span>'}\nfunction tail(id){return '<span class=\"opc-hint\" id=\"opq-h-'+id+'\" hidden><\/span><span class=\"opc-err\" id=\"opq-e-'+id+'\" hidden><\/span>'}\nfunction inp(id,txt,cls,ph,type,pre){var k=id.replace(\/^d(?=name|str|no|pc|town)\/,''),a=type=='number'?' inputmode=\"decimal\" min=\"0\" max=\"'+MAXAMT+'\" step=\"0.01\"':' maxlength=\"'+(LEN[k]||70)+'\"';\n var i='<input id=\"opq-'+id+'\" type=\"'+(type||'text')+'\"'+(ph?' placeholder=\"'+esc(ph)+'\"':'')+a+(id=='iban'||id=='ref'?' autocomplete=\"off\" spellcheck=\"false\"':'')+'>';\n return '<label class=\"'+(cls||'')+'\" id=\"opq-w-'+id+'\">'+lab(id,txt)+(pre?'<span class=\"opc-pre\"><i aria-hidden=\"true\">'+pre+'<\/i>'+i+'<\/span>':i)+tail(id)+'<\/label>'}\nfunction sel(id,txt,cls){return '<label class=\"'+(cls||'')+'\" id=\"opq-w-'+id+'\">'+lab(id,txt)+'<select id=\"opq-'+id+'\">'+OPTS+'<\/select>'+tail(id)+'<\/label>'}\nfunction seg(k,txt,opts){return '<fieldset><legend>'+txt+'<\/legend><div class=\"opc-seg\" data-k=\"'+k+'\">'+opts.map(function(o){return '<button type=\"button\" data-v=\"'+o[0]+'\" aria-pressed=\"'+(S[k]===o[0])+'\">'+esc(o[1])+'<\/button>'}).join('')+'<\/div><\/fieldset>'}\nfunction adr(p){return inp(p+'name',D.name)+inp(p+'str',D.str,'w4')+inp(p+'no',D.no,'w2')+inp(p+'pc',D.pc,'w2')+inp(p+'town',D.town,'w4')+sel(p+'ctry',D.ctry)}\ncard.innerHTML='<div class=\"opc-cols\">'+\n '<div class=\"opc-sec\"><p class=\"opc-h\"><b>1<\/b>'+D.g1+'<\/p><div class=\"opc-grid\">'+inp('iban',D.iban,'',D.ibanph)+adr('')+'<\/div><\/div>'+\n '<div class=\"opc-sec\"><p class=\"opc-h\"><b>2<\/b>'+D.g2+'<\/p>'+seg('cur',D.cur,[['CHF','CHF'],['EUR','EUR']])+'<div class=\"opc-grid\">'+inp('amt',D.amt,'','','number','<span id=\"opq-cc\">CHF<\/span>')+inp('ref',D.refs)+inp('msg',D.msg,'',D.msgph)+'<\/div><\/div>'+\n '<div class=\"opc-sec\"><p class=\"opc-h\"><b>3<\/b>'+D.g3+'<\/p>'+seg('db',D.dbm,D.dbs)+'<div class=\"opc-grid\" id=\"opq-dbw\">'+adr('d')+'<\/div><\/div><\/div>'+\n '<div class=\"opc-out\"><div class=\"opc-st\" id=\"opq-st\" role=\"status\"><\/div><div class=\"opc-slip\" id=\"opq-slip\"><\/div>'+\n '<div class=\"opc-act\"><button type=\"button\" class=\"pri\" id=\"opq-print\">'+D.print+'<\/button><button type=\"button\" id=\"opq-svg\">'+D.svg+'<\/button><\/div>'+\n '<p class=\"opc-note\">'+D.warn+'<\/p><p class=\"opc-note\">'+D.priv+' <button type=\"button\" class=\"opc-lk\" id=\"opq-forget\">'+D.forget+'<\/button><\/p><p class=\"opc-note\">'+D.note+'<\/p><\/div>';\nvar $=function(i){return document.getElementById('opq-'+i)},v=function(i){return $(i).value.trim()};\n$('ctry').value='CH';$('dctry').value='CH';\nfunction hint(id,t){var h=$('h-'+id);h.textContent=t||'';h.hidden=!t}\nfunction tip(id,t){var b=$('i-'+id),x=$('t-'+id);if(x.textContent!==(t||''))x.textContent=t||'';b.hidden=!t}\ntip('iban',D.h_iban);tip('amt',D.amth);\n\/\/ --- controlli ---\nfunction mod97(s){var r=0;for(var i=0;i<s.length;i++){var c=s.charCodeAt(i),x=c>=65?String(c-55):s[i];for(var j=0;j<x.length;j++)r=(r*10+(+x[j]))%97}return r}\nfunction ibn(s){return s.replace(\/[^0-9A-Za-z]\/g,'').toUpperCase()}\nfunction m10(d){var tb=[0,9,4,6,8,2,7,1,3,5],c=0;for(var i=0;i<d.length;i++)c=tb[(c+ +d[i])%10];return String((10-c)%10)}\nfunction isQR(iban){var q=+iban.slice(4,9);return q>=30000&&q<=31999}\nfunction grp(s,n,first){var o=[];if(first){o.push(s.slice(0,first));s=s.slice(first)}for(var i=0;i<s.length;i+=n)o.push(s.slice(i,i+n));return o.join(' ')}\nfunction money(a){var p=a.toFixed(2).split('.');return p[0].replace(\/\\B(?=(\\d{3})+(?!\\d))\/g,' ')+'.'+p[1]} \/\/ separatore delle migliaia: spazio (SIX 3.5.3)\nfunction build(){\n var er=[],E=function(id,m){er.push({id:id,m:m})},iban=ibn(v('iban')),qr=false;\n if(!\/^(CH|LI)\\d{2}[0-9A-Z]{17}$\/.test(iban))E('iban',D.e_ibanc);else if(mod97(iban.slice(4)+iban.slice(0,4))!==1)E('iban',D.e_iban);else qr=isQR(iban);\n function A(p){var o={name:v(p+'name'),str:v(p+'str'),no:v(p+'no'),pc:v(p+'pc'),town:v(p+'town'),ctry:v(p+'ctry')||'CH'};\n  ['name','pc','town'].forEach(function(k){if(!o[k])E(p+k,D.req)});\n  if(o.pc&&\/^(CH|LI)$\/.test(o.ctry)&&!\/^\\d{4}$\/.test(o.pc))E(p+'pc',D.pc4);\n  ['name','str','no','pc','town'].forEach(function(k){var m=o[k].match(OKCH);if(m)E(p+k,f(D.bad,{x:m[0]}))});\n  return o}\n var c=A(''),d=S.db=='y'?A('d'):null;\n var ra=v('amt'),amt=null;if(ra){amt=Math.round(parseFloat(ra.replace(',','.'))*100)\/100;if(!(amt>=0.01&&amt<=MAXAMT)){E('amt',D.e_amt);amt=null}}\n if(qr&&S.cur=='EUR')E('ref',D.e_qeur);\n var rr=ibn(v('ref')),tp='NON',ref='';\n if(qr){tp='QRR';if(\/^\\d{27}$\/.test(rr)&&m10(rr.slice(0,26))===rr[26])ref=rr;else if(\/^\\d{1,26}$\/.test(rr)){var b=('00000000000000000000000000'+rr).slice(-26);ref=b+m10(b)}else E('ref',D.e_refq)}\n else if(rr){if(\/^RF\\d{2}[0-9A-Z]{1,21}$\/.test(rr)&&mod97(rr.slice(4)+rr.slice(0,4))===1)ref=rr;else if(\/^[0-9A-Z]{1,21}$\/.test(rr)){var k=98-mod97(rr+'RF00');ref='RF'+(k<10?'0':'')+k+rr}else E('ref',D.e_refs);tp=ref?'SCOR':'NON'}\n var msg=v('msg'),mm=msg.match(OKCH);if(mm)E('msg',f(D.bad,{x:mm[0]}));\n var ad=function(o){return o?['S',o.name,o.str,o.no,o.pc,o.town,o.ctry]:['','','','','','','']};\n var pl=['SPC','0200','1',iban].concat(ad(c),['','','','','','',''],[amt==null?'':amt.toFixed(2),S.cur],ad(d),[tp,ref,msg,'EPD']).join('\\r\\n');\n return {er:er,qr:qr,iban:iban,c:c,d:d,amt:amt,tp:tp,ref:ref,msg:msg,pl:pl}}\n\/\/ --- disegno della sezione di pagamento (mm, font in pt) ---\nvar PT=0.3528;\nfunction wrap(s,n){var w=String(s).split(' '),o=[],l='';w.forEach(function(x){if((l+' '+x).trim().length>n&&l){o.push(l);l=x}else l=(l+' '+x).trim()});if(l)o.push(l);return o}\nfunction qrSvg(pl,x,y){var q=qrcode(0,'M');q.addData(unescape(encodeURIComponent(pl)),'Byte');q.make();var n=q.getModuleCount(),m=46\/n,p='';\n for(var r=0;r<n;r++)for(var k=0;k<n;k++)if(q.isDark(r,k))p+='M'+(x+k*m).toFixed(3)+' '+(y+r*m).toFixed(3)+'h'+m.toFixed(3)+'v'+m.toFixed(3)+'h-'+m.toFixed(3)+'z';\n var cx=x+23,cy=y+23;\n return '<path d=\"'+p+'\" fill=\"#000\"\/><rect x=\"'+(cx-3.5)+'\" y=\"'+(cy-3.5)+'\" width=\"7\" height=\"7\" fill=\"#fff\"\/><rect x=\"'+(cx-3)+'\" y=\"'+(cy-3)+'\" width=\"6\" height=\"6\" fill=\"#000\"\/>'+\n  '<rect x=\"'+(cx-0.6)+'\" y=\"'+(cy-1.95)+'\" width=\"1.2\" height=\"3.9\" fill=\"#fff\"\/><rect x=\"'+(cx-1.95)+'\" y=\"'+(cy-0.6)+'\" width=\"3.9\" height=\"1.2\" fill=\"#fff\"\/>'}\nfunction corners(x,y,w,h){var a=3,s='';[[x,y,1,1],[x+w,y,-1,1],[x,y+h,1,-1],[x+w,y+h,-1,-1]].forEach(function(c){s+='M'+(c[0]+a*c[2])+' '+c[1]+'H'+c[0]+'V'+(c[1]+a*c[3])});return '<path d=\"'+s+'\" fill=\"none\" stroke=\"#000\" stroke-width=\"'+(0.75*PT)+'\"\/>'}\nfunction slip(b){\n var o=[],t=function(x,y,s,pt,bold,anchor){o.push('<text x=\"'+x+'\" y=\"'+y.toFixed(2)+'\" font-size=\"'+(pt*PT).toFixed(3)+'\"'+(bold?' font-weight=\"bold\"':'')+(anchor?' text-anchor=\"'+anchor+'\"':'')+'>'+esc(s)+'<\/text>')};\n var adrL=function(a){return a?[a.name,[a.str,a.no].join(' ').trim(),(a.ctry&&a.ctry!='CH'?a.ctry+'-':'')+[a.pc,a.town].join(' ').trim()].filter(Boolean):[]};\n var ibanF=grp(b.iban,4),refF=b.tp=='QRR'?grp(b.ref,5,2):grp(b.ref,4),cl=adrL(b.c),dl=adrL(b.d);\n \/\/ ricevuta (62 x 105 mm)\n var y=5+11*PT;t(5,y,Q.rc,11,1);y=12+6*PT;\n var sec=function(x,yy,head,lines,hp,vp,wc){t(x,yy,head,hp,1);yy+=vp*PT*1.1;lines.forEach(function(l){wrap(l,wc).forEach(function(w){t(x,yy,w,vp);yy+=vp*PT*1.1})});return yy+vp*PT*0.9};\n y=sec(5,y,Q.acc,[ibanF].concat(cl),6,8,34);\n if(b.ref)y=sec(5,y,Q.ref,[refF],6,8,34);\n if(dl.length)y=sec(5,y,Q.by,dl,6,8,34);else{t(5,y,Q.byx,6,1);o.push(corners(5,y+1.5,52,20))}\n t(5,68,Q.ccy,6,1);t(17,68,Q.amt,6,1);t(5,72,S.cur,8);\n if(b.amt!=null)t(17,72,money(b.amt),8);else o.push(corners(27,69.5,30,10));\n t(57,82,Q.ap,6,1,'end');\n \/\/ sezione pagamento (148 x 105 mm, da x = 62)\n t(67,5+11*PT,Q.pp,11,1);\n o.push(b.er.length?'<rect x=\"67\" y=\"17\" width=\"46\" height=\"46\" fill=\"#E6E9EC\"\/>':qrSvg(b.pl,67,17)); \/\/ niente codice finch\u00e9 i dati non sono in regola\n t(67,70,Q.ccy,8,1);t(80,70,Q.amt,8,1);t(67,75,S.cur,10);\n if(b.amt!=null)t(80,75,money(b.amt),10);else o.push(corners(78,72,40,15)); \/\/ sotto \u00abImporto\u00bb, come nello schema SIX (sezione importo 62-118 mm)\n y=5+8*PT;\n y=sec(118,y,Q.acc,[ibanF].concat(cl),8,10,44);\n if(b.ref)y=sec(118,y,Q.ref,[refF],8,10,44);\n if(b.msg)y=sec(118,y,Q.add,[b.msg],8,10,44);\n if(dl.length)sec(118,y,Q.by,dl,8,10,44);else{t(118,y,Q.byx,8,1);o.push(corners(118,y+1.5,65,25))}\n var dash=' stroke=\"#000\" stroke-width=\"0.2\" stroke-dasharray=\"1 1\"';\n return '<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 210 105\" width=\"210mm\" height=\"105mm\" font-family=\"Arial, Helvetica, \\'Liberation Sans\\', sans-serif\" fill=\"#000\">'+\n  '<rect width=\"210\" height=\"105\" fill=\"#fff\"\/><line x1=\"0\" y1=\"0.1\" x2=\"210\" y2=\"0.1\"'+dash+'\/><line x1=\"62\" y1=\"0\" x2=\"62\" y2=\"105\"'+dash+'\/>'+'<text x=\"8\" y=\"2.9\" font-size=\"3.2\" font-family=\"Segoe UI Symbol, DejaVu Sans, sans-serif\">\u2702<\/text><text x=\"0\" y=\"0\" font-size=\"3.2\" font-family=\"Segoe UI Symbol, DejaVu Sans, sans-serif\" transform=\"translate(63.1 40) rotate(90)\">\u2702<\/text>'+o.join('')+'<\/svg>'}\n\/\/ --- memoria locale (solo il beneficiario) ---\nvar KEEP=['iban','name','str','no','pc','town','ctry'];\nfunction load(){try{var o=JSON.parse(localStorage.getItem(KEY))||{};KEEP.forEach(function(k){if(typeof o[k]!='string')return;if(k=='ctry'){if(CC.indexOf(o[k])>=0)$(k).value=o[k]}else $(k).value=o[k].slice(0,LEN[k])})}catch(e){}}\nfunction save(){try{var o={};KEEP.forEach(function(k){o[k]=$(k).value});localStorage.setItem(KEY,JSON.stringify(o))}catch(e){}}\nvar B,TOUCH={},ALL=false,FIELDS=['iban','name','str','no','pc','town','ctry','amt','ref','msg','dname','dstr','dno','dpc','dtown','dctry'];\nfunction render(){\n var a=$('amt');if(parseFloat(String(a.value).replace(',','.'))>MAXAMT)a.value=MAXAMT;\n $('dbw').hidden=S.db!='y';$('cc').textContent=S.cur;\n var ib=ibn(v('iban')),qr=\/^(CH|LI)\\d{19}$\/.test(ib)&&isQR(ib);\n \/\/ riferimento: solo cifre (max 26) con QR-IBAN; lettere e cifre (max 21, o un RF gi\u00e0 pronto fino a 25) con IBAN\n var r=$('ref'),rv=qr?r.value.replace(\/\\D\/g,''):ibn(r.value),cap=qr?26:25;if(rv.length>cap)rv=rv.slice(0,cap);if(rv!==r.value)r.value=rv;\n var rmax=qr?26:(\/^RF\\d{2}\/.test(rv)?25:21);r.maxLength=cap;r.inputMode=qr?'numeric':'text';\n $('w-ref').querySelector('.opc-lt>span').textContent=qr?D.refq:D.refs;\n \/\/ NPA: in Svizzera e nel Liechtenstein solo 4 cifre, altrove fino a 16 caratteri\n ['',\"d\"].forEach(function(p){var e=$(p+'pc'),ch=\/^(CH|LI)$\/.test($(p+'ctry').value),x=ch?e.value.replace(\/\\D\/g,'').slice(0,4):e.value;if(x!==e.value)e.value=x;e.maxLength=ch?4:16;e.inputMode=ch?'numeric':'text'});\n B=build();\n tip('ref',qr?D.h_refq:D.h_refs);hint('ref',B.ref?f(B.tp=='QRR'?D.r_q:D.r_s,{x:B.tp=='QRR'?grp(B.ref,5,2):grp(B.ref,4)}):'');\n FIELDS.forEach(function(id){var e=$(id);if(!e)return;\n  var c=$('c-'+id),mx=id=='ref'?rmax:(e.tagName=='INPUT'&&e.maxLength>0?e.maxLength:0),n=id=='iban'?ibn(e.value).length:e.value.length;\n  if(c)c.textContent=mx?n+'\/'+(id=='iban'?21:mx):'';\n  var ms=B.er.filter(function(x){return x.id==id}),show=ms.length&&(TOUCH[id]||ALL),er=$('e-'+id);\n  er.textContent=show?ms[0].m:'';er.hidden=!show;e.setAttribute('aria-invalid',show?'true':'false')});\n var st=$('st'),ok=!B.er.length;st.className='opc-st '+(ok?'ok':(ALL?'er':'in'));\n st.innerHTML=ok?esc(D.ok)+(S.cur=='EUR'?'<br>'+esc(D.w_eur):''):esc(ALL?D.ko2:D.ko3);\n var sl=$('slip');sl.className='opc-slip'+(ok?'':' bad');\n try{sl.innerHTML=slip(B)}catch(e){sl.innerHTML=''}}\n\/\/ stampa e download: con dati incompleti mostrano tutti gli errori e portano al primo campo da correggere\nfunction ready(){if(!B.er.length)return true;ALL=true;render();var e=$(B.er[0].id);if(e){e.focus();e.scrollIntoView({block:'center'})}return false}\ncard.addEventListener('click',function(e){var b=e.target.closest('.opc-seg button');if(!b)return;var g=b.parentNode;S[g.dataset.k]=b.dataset.v;[].forEach.call(g.children,function(x){x.setAttribute('aria-pressed',x===b)});render()});\nfunction onIn(e){var t=e.target;if(!\/^(INPUT|SELECT)$\/.test(t.tagName))return;\n if(t.id=='opq-iban'){var raw=ibn(t.value).slice(0,21);if(t.selectionStart===t.value.length||raw.length==21)t.value=grp(raw,4)}\n render();if(KEEP.indexOf(t.id.slice(4))>=0)save();if(e.type=='input')flash(t.id.slice(4))}\nvar FT={};function flash(id){var c=$('c-'+id);if(!c||!c.textContent)return;c.classList.add('on');clearTimeout(FT[id]);FT[id]=setTimeout(function(){c.classList.remove('on')},1200)}\n\/\/ tooltip: al passaggio del mouse o con il tasto Tab; un clic (o tocco) lo fissa, Esc o un clic altrove lo chiude\nfunction tipShow(b,on){var x=$('t-'+b.dataset.f);if(on){x.style.setProperty('--ax',(b.offsetLeft+4)+'px');x.hidden=false}else x.hidden=true;b.setAttribute('aria-expanded',on?'true':'false')}\nvar PIN=null;card.addEventListener('mouseover',function(e){var b=e.target.closest('.opc-tip');if(b&&!PIN)tipShow(b,true)});card.addEventListener('mouseout',function(e){var b=e.target.closest('.opc-tip');if(b&&PIN!==b)tipShow(b,false)});\ncard.addEventListener('focusin',function(e){var b=e.target.closest('.opc-tip');if(b)tipShow(b,true)});card.addEventListener('focusout',function(e){var b=e.target.closest('.opc-tip');if(b&&PIN!==b)tipShow(b,false)});\ncard.addEventListener('click',function(e){var b=e.target.closest('.opc-tip');if(!b)return;e.preventDefault();if(PIN&&PIN!==b)tipShow(PIN,false);PIN=PIN===b?null:b;tipShow(b,!!PIN)});\ndocument.addEventListener('click',function(e){if(PIN&&!e.target.closest('.opc-tip')){tipShow(PIN,false);PIN=null}});document.addEventListener('keydown',function(e){if(e.key=='Escape'&&PIN){tipShow(PIN,false);PIN.focus();PIN=null}});\ncard.addEventListener('input',onIn);card.addEventListener('change',onIn);\ncard.addEventListener('focusout',function(e){var t=e.target;if(\/^(INPUT|SELECT)$\/.test(t.tagName)&&t.value!==''){TOUCH[t.id.slice(4)]=true;render()}});\nfunction file(){var s=$('slip').innerHTML;return '<?xml version=\"1.0\" encoding=\"UTF-8\"?>\\n'+s}\n$('svg').addEventListener('click',function(){if(!ready())return;var u=URL.createObjectURL(new Blob([file()],{type:'image\/svg+xml'})),a=document.createElement('a');a.href=u;a.download='qr-fattura.svg';document.body.appendChild(a);a.click();a.remove();setTimeout(function(){URL.revokeObjectURL(u)},4000)});\n$('print').addEventListener('click',function(){if(!ready())return;var w=window.open('','_blank');if(!w)return;\n \/\/ A4 verticale, sezione di pagamento in fondo (SIX: 210 x 105 mm), indicazione per staccare sopra la linea\n w.document.write('<!doctype html><html lang=\"'+L+'\"><head><meta charset=\"utf-8\"><title>QR<\/title><style>@page{size:A4 portrait;margin:0}html,body{margin:0;padding:0}body{width:210mm;height:297mm;position:relative;font-family:Arial,Helvetica,sans-serif}'+\n  '.cut{position:absolute;left:5mm;top:187.5mm;font-size:7pt}.s{position:absolute;left:0;top:192mm;width:210mm;height:105mm}.s svg{width:210mm;height:105mm;display:block}<\/style><\/head><body><div class=\"cut\">'+esc(Q.cut)+'<\/div><div class=\"s\">'+$('slip').innerHTML+'<\/div><\/body><\/html>');\n w.document.close();w.focus();setTimeout(function(){w.print()},300)});\n$('forget').addEventListener('click',function(){try{localStorage.removeItem(KEY)}catch(e){}KEEP.forEach(function(k){$(k).value=''});$('ctry').value='CH';TOUCH={};ALL=false;render()});\nload();render();\nwindow.opqBuild=function(){return B}; \/\/ per i test\n})();\n<\/script>\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-9a5b348 op-how elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"9a5b348\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b298151\" data-id=\"b298151\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7267b43 elementor-widget elementor-widget-heading\" data-id=\"7267b43\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">How it works<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ef1d8b2 elementor-widget elementor-widget-text-editor\" data-id=\"ef1d8b2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The generator creates the <b>payment part with receipt<\/b> (210 \u00d7 105 mm) that goes at the bottom of the invoice: Swiss QR Code with the Swiss cross, account, reference, amount and addresses, with the official headings in the language of the page. You print it on an A4 sheet, with the payment part at the bottom, or save it as a PDF.<\/p><p>We work out the reference from the invoice number. With a <b>QR-IBAN<\/b> it becomes a 27-digit QR reference, allowed in francs only. With a regular <b>IBAN<\/b> it becomes a Creditor Reference starting with RF; if you do not need one, leave the field blank. Addresses are always structured (street, number, postcode and town in separate fields), as banks require for new QR-bills.<\/p><p>Before sending it, you can check it with the <a href=\"\/en\/qr-bill-check\/\">Check your QR-bill<\/a> tool. And if you invoice often, <a href=\"\/en\/features\/invoices\/\">1pay.ch invoices<\/a> already include the QR-bill in the PDF, together with a link to pay by TWINT or card.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e459045 op-faq elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e459045\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b913e4c\" data-id=\"b913e4c\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1ade888 elementor-widget elementor-widget-heading\" data-id=\"1ade888\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Frequently asked questions<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d7ff07a elementor-widget elementor-widget-raven-advanced-accordion\" data-id=\"d7ff07a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;collapsible&quot;:&quot;false&quot;,&quot;scroll_to_content&quot;:&quot;false&quot;}\" data-widget_type=\"raven-advanced-accordion.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div id=\"jupiterx-advanced-accordion-wrapper\" class=\"jupiterx-advanced-accordion-wrapper\">\n\t\t\t\t<div class=\"jupiterx-advanced-accordion-inner-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"jupiterx-single-advanced-accordion-wrapper  jx-ac-first  jx-ac-inactive\" id=\"\" >\n\t\t\t\t<div class=\"jx-single-accordion-header\">\n\t\t\t\t\t<div class=\"jx-single-accordion-header-left\">\n\t\t\t\t\t\t<div class=\"jx-single-accordion-header-icon-toggle-wrapper jx-single-accordion-header-icon-toggle-wrapper-hide\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<span class=\"jx-ac-title\">Is the generator free?<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"jx-single-accordion-header-right\">\n\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"jx-ac-icon-body-closed jx-ac-toggle-icon fas fa-chevron-right\"><\/i><i aria-hidden=\"true\" class=\"jx-ac-icon-body-opened jx-ac-toggle-icon fas fa-chevron-down\"><\/i>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"jx-single-accordion-body  jx-ac-body-none\">\n\t\t\t\t\t<div class=\"jx-ac-content\">\n\t\t\t\t\t\t<div class=\"jx-ac-content-inner-wrapper\">\n\t\t\t\t\t\t\t<div class=\"jupiterx-ac-content-is-editor\"><p>Yes, with no sign-up. The QR-bill is created in your browser: we neither receive nor store IBANs, names or amounts.<\/p><\/div>\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"jupiterx-single-advanced-accordion-wrapper  jx-ac-inactive\" id=\"\" >\n\t\t\t\t<div class=\"jx-single-accordion-header\">\n\t\t\t\t\t<div class=\"jx-single-accordion-header-left\">\n\t\t\t\t\t\t<div class=\"jx-single-accordion-header-icon-toggle-wrapper jx-single-accordion-header-icon-toggle-wrapper-hide\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<span class=\"jx-ac-title\">What is the difference between a QR-IBAN and an IBAN?<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"jx-single-accordion-header-right\">\n\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"jx-ac-icon-body-closed jx-ac-toggle-icon fas fa-chevron-right\"><\/i><i aria-hidden=\"true\" class=\"jx-ac-icon-body-opened jx-ac-toggle-icon fas fa-chevron-down\"><\/i>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"jx-single-accordion-body  jx-ac-body-none\">\n\t\t\t\t\t<div class=\"jx-ac-content\">\n\t\t\t\t\t\t<div class=\"jx-ac-content-inner-wrapper\">\n\t\t\t\t\t\t\t<div class=\"jupiterx-ac-content-is-editor\"><p>A QR-IBAN is used only with the 27-digit QR reference and only for invoices in francs: it lets payments be matched automatically and is issued by your bank. With a regular IBAN you use the Creditor Reference (RF) or no reference, in francs or euros.<\/p><\/div>\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"jupiterx-single-advanced-accordion-wrapper  jx-ac-inactive\" id=\"\" >\n\t\t\t\t<div class=\"jx-single-accordion-header\">\n\t\t\t\t\t<div class=\"jx-single-accordion-header-left\">\n\t\t\t\t\t\t<div class=\"jx-single-accordion-header-icon-toggle-wrapper jx-single-accordion-header-icon-toggle-wrapper-hide\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<span class=\"jx-ac-title\">Do I need perforated paper?<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"jx-single-accordion-header-right\">\n\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"jx-ac-icon-body-closed jx-ac-toggle-icon fas fa-chevron-right\"><\/i><i aria-hidden=\"true\" class=\"jx-ac-icon-body-opened jx-ac-toggle-icon fas fa-chevron-down\"><\/i>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"jx-single-accordion-body  jx-ac-body-none\">\n\t\t\t\t\t<div class=\"jx-ac-content\">\n\t\t\t\t\t\t<div class=\"jx-ac-content-inner-wrapper\">\n\t\t\t\t\t\t\t<div class=\"jupiterx-ac-content-is-editor\"><p>If you send the invoice by post, yes: the payment part with receipt must be printed on white perforated paper so the payer can tear it off. For a PDF, the dashed lines with scissors that the generator adds are enough. Always print at 100%, without fitting to the page.<\/p><\/div>\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"jupiterx-single-advanced-accordion-wrapper  jx-ac-inactive\" id=\"\" >\n\t\t\t\t<div class=\"jx-single-accordion-header\">\n\t\t\t\t\t<div class=\"jx-single-accordion-header-left\">\n\t\t\t\t\t\t<div class=\"jx-single-accordion-header-icon-toggle-wrapper jx-single-accordion-header-icon-toggle-wrapper-hide\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<span class=\"jx-ac-title\">Can I leave the amount and payer blank?<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"jx-single-accordion-header-right\">\n\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"jx-ac-icon-body-closed jx-ac-toggle-icon fas fa-chevron-right\"><\/i><i aria-hidden=\"true\" class=\"jx-ac-icon-body-opened jx-ac-toggle-icon fas fa-chevron-down\"><\/i>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"jx-single-accordion-body  jx-ac-body-none\">\n\t\t\t\t\t<div class=\"jx-ac-content\">\n\t\t\t\t\t\t<div class=\"jx-ac-content-inner-wrapper\">\n\t\t\t\t\t\t\t<div class=\"jupiterx-ac-content-is-editor\"><p>Yes. Instead of the amount and the payer's details, boxes to fill in by hand appear, as the SIX rules require.<\/p><\/div>\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"jupiterx-single-advanced-accordion-wrapper  jx-ac-last  jx-ac-inactive\" id=\"\" >\n\t\t\t\t<div class=\"jx-single-accordion-header\">\n\t\t\t\t\t<div class=\"jx-single-accordion-header-left\">\n\t\t\t\t\t\t<div class=\"jx-single-accordion-header-icon-toggle-wrapper jx-single-accordion-header-icon-toggle-wrapper-hide\" >\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<span class=\"jx-ac-title\">Will the QR-bill still be valid after 14 November 2026?<\/span>\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"jx-single-accordion-header-right\">\n\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"jx-ac-icon-body-closed jx-ac-toggle-icon fas fa-chevron-right\"><\/i><i aria-hidden=\"true\" class=\"jx-ac-icon-body-opened jx-ac-toggle-icon fas fa-chevron-down\"><\/i>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"jx-single-accordion-body  jx-ac-body-none\">\n\t\t\t\t\t<div class=\"jx-ac-content\">\n\t\t\t\t\t\t<div class=\"jx-ac-content-inner-wrapper\">\n\t\t\t\t\t\t\t<div class=\"jupiterx-ac-content-is-editor\"><p>Yes: the generator follows the SIX guidelines version 2.4, in force from that date, and uses structured addresses only. Banks no longer accept QR-bills with combined addresses.<\/p><\/div>\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8beaca2 op-jsonld elementor-widget elementor-widget-html\" data-id=\"8beaca2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script type=\"application\/ld+json\">{\"@context\": \"https:\/\/schema.org\", \"@graph\": [{\"@type\": \"WebApplication\", \"@id\": \"https:\/\/www.1pay.ch\/en\/qr-bill-generator\/#app\", \"name\": \"QR-bill generator\", \"description\": \"Create the payment part of your Swiss QR-bill for free: IBAN or QR-IBAN, amount, reference and structured addresses. Print or PDF, in your browser.\", \"url\": \"https:\/\/www.1pay.ch\/en\/qr-bill-generator\/\", \"inLanguage\": \"en\", \"applicationCategory\": \"BusinessApplication\", \"operatingSystem\": \"Web\", \"isAccessibleForFree\": true, \"offers\": {\"@type\": \"Offer\", \"price\": \"0\", \"priceCurrency\": \"CHF\"}, \"provider\": {\"@id\": \"https:\/\/www.1pay.ch\/#organization\"}}, {\"@type\": \"FAQPage\", \"@id\": \"https:\/\/www.1pay.ch\/en\/qr-bill-generator\/#faq\", \"inLanguage\": \"en\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"Is the generator free?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes, with no sign-up. The QR-bill is created in your browser: we neither receive nor store IBANs, names or amounts.\"}}, {\"@type\": \"Question\", \"name\": \"What is the difference between a QR-IBAN and an IBAN?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"A QR-IBAN is used only with the 27-digit QR reference and only for invoices in francs: it lets payments be matched automatically and is issued by your bank. With a regular IBAN you use the Creditor Reference (RF) or no reference, in francs or euros.\"}}, {\"@type\": \"Question\", \"name\": \"Do I need perforated paper?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"If you send the invoice by post, yes: the payment part with receipt must be printed on white perforated paper so the payer can tear it off. For a PDF, the dashed lines with scissors that the generator adds are enough. Always print at 100%, without fitting to the page.\"}}, {\"@type\": \"Question\", \"name\": \"Can I leave the amount and payer blank?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes. Instead of the amount and the payer's details, boxes to fill in by hand appear, as the SIX rules require.\"}}, {\"@type\": \"Question\", \"name\": \"Will the QR-bill still be valid after 14 November 2026?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes: the generator follows the SIX guidelines version 2.4, in force from that date, and uses structured addresses only. Banks no longer accept QR-bills with combined addresses.\"}}]}]}<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-468f71e op-more-tools elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"468f71e\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;jet_parallax_layout_list&quot;:[]}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-884bf6c\" data-id=\"884bf6c\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f15abb6 elementor-widget elementor-widget-heading\" data-id=\"f15abb6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">More free tools<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2305f16 op-tools elementor-widget elementor-widget-html\" data-id=\"2305f16\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.op-tl{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--op-tl-min,300px),1fr));gap:18px;max-width:1140px;margin:0 auto;font-family:Poppins,Arial,sans-serif;text-align:left}html body a.op-tl-c{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #D5DCE2;border-radius:16px;padding:24px;text-decoration:none!important;color:#2A2F33!important;transition:box-shadow .2s,border-color .2s}html body a.op-tl-c:hover,html body a.op-tl-c:focus-visible{border-color:#27509C;box-shadow:0 12px 28px rgba(16,24,40,.08)}.op-tl-c i,.op-tl-c svg{color:#27509C;fill:#27509C;font-size:22px;width:22px;height:22px}.op-tl-c b{font-size:1.08rem;font-weight:600;color:#1D3D78;line-height:1.3}.op-tl-c span{font-size:.94rem;line-height:1.55;color:#5B6B70}.op-tl-c em{margin-top:auto;padding-top:6px;font-style:normal;font-weight:600;font-size:.92rem;color:#27509C}<\/style><div class=\"op-tl\" style=\"--op-tl-min:230px\"><a class=\"op-tl-c\" href=\"\/en\/fee-calculator\/\"><i class=\"fas fa-calculator\" aria-hidden=\"true\"><\/i><b>Fee calculator<\/b><span>Enter your takings and number of payments to see which plan pays off.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/nonprofit-calculator\/\"><i class=\"fas fa-hand-holding-heart\" aria-hidden=\"true\"><\/i><b>Nonprofit calculator<\/b><span>For associations: find out when the Nonprofit plan pays for itself.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/payment-solution-finder\/\"><i class=\"fas fa-map-signs\" aria-hidden=\"true\"><\/i><b>How should you take payments?<\/b><span>Answer a few questions and find the payment methods that suit you.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/qr-bill-check\/\"><i class=\"fas fa-qrcode\" aria-hidden=\"true\"><\/i><b>Check your QR-bill<\/b><span>Upload a photo or screenshot: we check the data against the Swiss rules, in your browser.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/payment-reminder-template\/\"><i class=\"fas fa-comment-dots\" aria-hidden=\"true\"><\/i><b>Payment reminders<\/b><span>Your reminder ready for WhatsApp or email, in the right tone.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/vat-calculator\/\"><i class=\"fas fa-percent\" aria-hidden=\"true\"><\/i><b>VAT calculator<\/b><span>Add or remove Swiss VAT (8.1%, 2.6%, 3.8%) from any amount.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/late-payment-interest-calculator\/\"><i class=\"fas fa-hourglass-half\" aria-hidden=\"true\"><\/i><b>Late payment interest<\/b><span>What you can charge on an overdue payment: days late and 5% a year.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/net-price-calculator\/\"><i class=\"fas fa-tags\" aria-hidden=\"true\"><\/i><b>Net price calculator<\/b><span>How much to charge to receive the amount you want, fee included.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/iban-check\/\"><i class=\"fas fa-university\" aria-hidden=\"true\"><\/i><b>Check an IBAN<\/b><span>Valid or not, which country and whether it is a QR-IBAN.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/cost-of-cash-calculator\/\"><i class=\"fas fa-coins\" aria-hidden=\"true\"><\/i><b>What does cash cost you?<\/b><span>Time to count and deposit, fees and differences: the real cost of cash, with your own figures.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/membership-fees-calculator\/\"><i class=\"fas fa-users\" aria-hidden=\"true\"><\/i><b>Membership fees<\/b><span>Members and fee: what the association keeps on Starter or Nonprofit.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/payment-sign\/\"><i class=\"fas fa-store\" aria-hidden=\"true\"><\/i><b>\u00abYou can pay here with\u00bb sign<\/b><span>Choose the methods you accept and print the sign for your till or stall, in A4, A5 or A6.<\/span><em>Open the tool \u2192<\/em><\/a><a class=\"op-tl-c\" href=\"\/en\/event-payments-checklist\/\"><i class=\"fas fa-tasks\" aria-hidden=\"true\"><\/i><b>Event payments checklist<\/b><span>17 checks to tick off or print, from a week before to after the market or party.<\/span><em>Open the tool \u2192<\/em><\/a><\/div><p style=\"text-align:center;margin:24px 0 0\"><a href=\"\/en\/free-tools\/\" style=\"font-weight:600;color:#27509C\">All tools \u2192<\/a><\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Create the payment part of your Swiss QR-bill for free: IBAN or QR-IBAN, amount, reference and structured addresses. Print or PDF, in your browser.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"full-width.php","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-7283","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/pages\/7283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/comments?post=7283"}],"version-history":[{"count":9,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/pages\/7283\/revisions"}],"predecessor-version":[{"id":7716,"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/pages\/7283\/revisions\/7716"}],"wp:attachment":[{"href":"https:\/\/www.1pay.ch\/en\/wp-json\/wp\/v2\/media?parent=7283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}