把手上已有的 DuitNow QR 印出来——放大、印清楚、加上店名
丢一张银行或 PayNet 后台给你的截图,或者贴上那串码本身。海报按真实纸张、300 dpi 画出来,成品还会被读回来一次,证明它扫出来仍是同一串码。
🔒 100% 浏览器内运行 · 零服务器上传
丢一张 DuitNow QR 截图,或贴上码背后的那串字。海报就在这个标签页里画出来,不上传。
- 先验码:码自带的校验和,再看它适合哪张纸。
- 按 300 dpi 重画,每个模块都落在整像素上。
- 画完再把成品读回来比对,对上了才给下载。
打印前请用你的银行 App(Maybank、TnG、CIMB)扫一下这张预览。海报的好坏,取决于你给的那串码。
整个过程不出这个标签页:解码、重绘、校验都在页面里完成。不上传、不注册、不追踪。
马来西亚规则与特殊情况
这个工具不生成 DuitNow QR,也不会假装能生成。DuitNow QR 由商家的银行或收单机构签发,里面带着只有签发方能给的商户账号信息;在浏览器里编出来的码,是任何收银台都刷不了的码,而钱不是可以猜的地方。所以这里输入永远是你已有的码——截图,或背后的那串字——输出则是同一份 payload 重新画一遍,只是变成可以印的尺寸。
payload 里没有一个字节被改写。复制粘贴带进来的换行会被去掉,因为它们本来就不属于这串码;码里原有的空格会保留,因为店名本来就有空格;其余每个字节原样保留,再按你选的容错等级重新编码一次。所以印出来的海报付进的是同一个账户,和钱包里那张卡唯一的差别是大小。
印之前先验这串码自己的校验和。EMVCo 的 QR 末尾是一段覆盖自身内容的 CRC-16。如果码被粘贴截断、在文档里被改过、或者从一张光线很差的照片读出来,这个校验和就对不上——页面会直接告诉你,而不是印出一张在柜台刷不出来的海报。根本不是 EMVCo 的码(店自己做的 QR)会报「没有校验和」,不会被说成坏码;而 DuitNow 码如果整段校验和都不见了,会单独报一种错——那正是「粘贴少了一行」的样子。
画完的海报还会被解码一次,就在这个页面里。画好后工具用自己的解码器读回自己的输出,和输入比对。只要错一个模块,海报就会报错,那张就不该印。下载按钮之所以放在一行绿字下面,而不是只放在画布旁边,就是因为这一步。
300 dpi,模块按整数像素。A4 在 300 dpi 下是 2480×3508 px,A5 是 1748×2480,A6 是 1240×1748。模块向下取整成一个整像素,边缘才不会糊;ISO 18004 规定的四模块静区算在正方形里面——把 QR 的边距裁掉,是印出来的码扫不出来最常见的原因。
纸张是你选的,不是猜的。A4 贴柜台后面的墙,A5 放收银台,A6 做桌面立牌。码很密时 A6 照样画得出来,但页面会告诉你每个模块有多少毫米,因为低于约 0.7 mm,手机在店里的灯光下就开始吃力。
它不做什么。它不改金额(银行给的静态码本来就固定),它不核实商户账户还有效,也不知道你的收单方对招牌有什么规定。它只把已经给你的码变成印得出来的东西,并证明印出来的还是同一个码。
处理前后
处理前
0002010102115204581253034585802MY5910KEDAI KOPI6004DEMO6304DC00
或者同一串码的截图——qr-kedai-kopi.png,1080×1080 处理后
kedai-kopi-duitnow-a4.pdf — A4 · 210×297 mm · 2480×3508 px · 29 个模块 · 每模块 4.74 mm
校验和通过 · 从海报读回:同一串 63 个字符 使用方法
- 丢一张 DuitNow QR 截图——或者贴上那串码,如果银行或 PayNet 后台有显示。两种方式都在浏览器里读完整个 payload。
- 填店名,需要的话再加下面一行。选纸:A4 贴墙、A5 放收银台、A6 做桌面立牌。
- 看预览下面那行绿字:海报已经被重新解码,读回同一串码。然后下载 300 dpi 的 PNG,或者尺寸精确的印刷 PDF。
常见问题
我还没有 DuitNow QR,这个工具能给我一个吗?
不能。DuitNow QR 是商家开户时由银行、电子钱包或 PayNet 注册的收单机构签发的,码里带着只有签发方能提供的账户信息;在这里生成的只会是一张什么都不是的图。这个工具做的是另一件事:拿到你已经收到的码——通常是张糊掉的截图、一张塑封卡的拍照、或者印得太小的码——按印刷分辨率重画,并加上你的店名。
码背后那串字要去哪里找?
通常三个地方:签发它的银行或收单机构的商户后台(找 "QR string"、"EMVCo payload" 或导出按钮)、开户时发给你的 PDF 或邮件、或者 QR 图片本身——把图丢进来这个工具会自己解码。如果都没有,直接向收单机构要你的 QR payload;那是你的码,他们也可以帮你印。
页面里讲的「校验和」是什么?
因为被截断的码肉眼看不出来,到了柜台却是致命的。EMVCo 的 payload 末尾有一段 CRC-16,覆盖前面所有内容;如果复制粘贴吃掉了最后几个字符,校验和对不上,而 QR 看起来依然是一张好码。验它只需要几行算术,却能把一次无声的失败变成一句你能处理的话:先拿一份原样的码再印。
我该用哪一种纸来印?
A4 贴柜台后面的墙,顾客隔着一步扫;A5 放收银台、过胶;A6 做咖啡店的桌面立牌。真正要紧的不是纸,而是印出来的模块尺寸:页面会显示每个模块多少毫米,低于约 0.7 mm,在灯光偏暗的店里手机就会辛苦。码越长(有些银行会塞入参考号),要的是更大的纸,而不是更小的字号。
印出来的 QR 还会付进我的账户吗?
会,只要印出来的码带的是同一份 payload——这正是读回校验要证明的事。海报改的是画法,不是字节:同样的商户账号信息、同样的校验和、同一串码,只是更大。这个工具保证不了的是:商户账户还有效,以及收单方允许你自己做招牌——那是银行的规定,做门面的店值得打个电话问一次。