In Thailand, many customers would rather pay by PromptPay. A PromptPay QR code with the amount already inside saves them typing it, so you get fewer short or mistyped transfers. It suits chat orders, deposits and individual bills.

QRnaka makes these codes for free, with no account and no ads.

With an amount or without?

Both kinds follow the Bank of Thailand's Thai QR Payment standard. The only difference is whether an amount is stored in the code.

With an amount Without an amount
When scanned The bank app fills in the amount The payer types it
Reuse Tied to that amount Works for any amount
Good for One bill or order A counter sign, events

If you know the exact total before the customer pays, put it in. If it changes every time, as in a café, leave it blank and print one code for the counter.

Making one, step by step

  1. Open the PromptPay QR page, or pick "PromptPay" on the home page.
  2. In "Mobile / citizen ID / tax ID / e-Wallet", type the PromptPay number linked to your bank account. Dashes and spaces are fine.
  3. In "Amount (THB)", type the total, for example 150 or 1,250.50, with no more than two decimals. Leave it empty if the payer should type the amount.
  4. The code appears straight away, with a summary of the number and amount stored in it. Read it back. A "Scans" badge means the on-device reader could read the code as drawn.
  5. Style it if you like: colours, dot shapes, a logo. With a logo the code always uses error-correction level H.
  6. Download PNG (up to 4096 px), SVG, PDF, JPG or WebP, or press "Copy image" and paste it into your chat with the customer.

For a sign at the till, the same page has a Printable card that lays out a scan-to-pay sign with your shop and account name. See making a PromptPay payment sign.

Which number should you use?

The page takes a 10-digit Thai mobile number, a 13-digit citizen ID or tax ID, or a 15-digit e-Wallet ID. For most people the mobile number linked to PromptPay is the simplest choice; companies use their tax ID.

Whatever you type ends up inside the code, readable by anyone with a QR reader, so think twice before putting a citizen ID on a public sign. The trade-offs are covered in PromptPay ID types.

The page can check the number's format, such as the check digit of a 13-digit ID, but it cannot see which account the number is linked to. If the number is not registered for PromptPay, payments will not go through, so test it.

Test it before a customer does

  1. Scan the code with your banking app, or ask someone at home to scan it with theirs.
  2. On the confirmation screen, check that the payee is your account and the amount is right, then cancel. No need to pay.
  3. Or drop the downloaded file onto the Read QR page to see the number and amount inside. It reads on your device and uploads nothing.

When you send a code in a chat, tell the customer which account name they should see in their app. More on this in checking a PromptPay QR before paying.

Many amounts at once

Selling items at several fixed prices? The Bulk page has a mode called "PromptPay: one number, many amounts". Enter your PromptPay number once, paste one amount per line (an optional second column becomes the file name) and download a single ZIP of up to 1,000 codes. Preparing the list in a spreadsheet is covered in bulk QR codes from Excel or CSV.

Where your data and your money go

The PromptPay code is made in your browser. If you are not signed in, the number and the amount are not sent anywhere. If you are signed in, the codes you download, copy or print are kept in your account history.

The money moves through PromptPay straight into your account. QRnaka only draws the code and never receives, holds or transfers money.

FAQ

Can I change the amount later?

No. The amount is part of the code, so make a new one with the new amount. If prices change often, a code without an amount is easier.

Can the amount include satang?

Yes, up to two decimals, such as 99.50. The amount must be more than zero.

Does the code expire?

The code holds your number and amount itself and does not pass through our site, so it works as long as that PromptPay number stays linked to an account. Payments go to whichever account the number is linked to at the time.

Do I need an account?

No. Every regular QR code, PromptPay included, is free with no sign-up and no ads.

Ready? Open the PromptPay QR page, enter your number and amount, test it once with a banking app, and send it to your customer.