QR Payments with PromptPay for WooCommerce generates a spec-correct PromptPay QR code on your own
server and shows it to the customer at checkout. They scan it with any Thai banking app and
pay the exact order total.
This is an offline gateway, in the same sense as WooCommerce’s built-in Direct Bank
Transfer (BACS):
Only Thai baht (THB) is supported, because PromptPay settles in baht.
Classic checkout and the newer Cart/Checkout Blocks are both supported, and the gateway is
fully compatible with High-Performance Order Storage (HPOS).
This plugin does not talk to any bank or payment processor and cannot confirm a payment on its
own. If you need automatic confirmation, use a payment processor such as Stripe. This is the
manual-reconciliation option, for stores that watch their bank account and confirm by hand.
This plugin makes no external HTTP requests. It sends nothing to any third party. The QR
image is drawn by a bundled encoder that ships with its source.
The QR attached to the awaiting-payment emails is kept as a small image file in the plugin’s
own folder inside your uploads directory, under an unguessable name and behind guard files
that refuse web access. Each file is deleted as soon as its order stops awaiting payment,
stale files are swept automatically, and deleting the plugin removes the folder entirely.
iconv extension (compiled into PHP by default).gd extension is used to draw a PNG QR code. Without it the plugin falls back to SVG, andThe QR image is drawn on your own server by these libraries, bundled with full source under a
plugin-specific namespace so they cannot collide with another plugin’s copy: