Kotchasan Framework Documentation

Kotchasan Framework Documentation

Promptpay

TH 05 Feb 2026 07:54

Promptpay

\Kotchasan\Promptpay สำหรับสร้าง PromptPay QR Code payload สำหรับการชำระเงินในประเทศไทย

การสร้าง

use Kotchasan\Promptpay;

// ด้วยเบอร์โทรศัพท์
$promptpay = Promptpay::create('0812345678');

// พร้อม amount
$promptpay = Promptpay::create('0812345678', 100.50);

// ด้วย National ID
$promptpay = Promptpay::create('1234567890123');

Methods

create()

สร้าง Promptpay object

$promptpay = Promptpay::create($merchant_id, $amount = null);
Parameter Type Description
$merchant_id string เบอร์โทร (10 หลัก) หรือ เลขบัตรประชาชน (13 หลัก)
$amount float\|null จำนวนเงิน (optional)

payload()

สร้าง payload สำหรับ QR Code

$promptpay = Promptpay::create('0812345678', 100);
$payload = $promptpay->payload();
// returns: "00020101021129370016A000000677010111..."

ตัวอย่างการใช้งาน

สร้าง QR Code พร้อมจำนวนเงิน

use Kotchasan\Promptpay;
use Kotchasan\Barcode;

$promptpay = Promptpay::create('0812345678', 500.00);
$payload = $promptpay->payload();

// สร้าง QR Code image
$qrcode = Barcode::create($payload, Barcode::QR_CODE);
$qrcode->save('payment_qr.png');

สร้าง QR Code แบบไม่ระบุจำนวนเงิน

$promptpay = Promptpay::create('0812345678');
$payload = $promptpay->payload();

// ผู้ชำระกรอกจำนวนเงินเองผ่านแอปธนาคาร

ใช้กับ E-Wallet ID

// รองรับ E-Wallet ID
$promptpay = Promptpay::create('ewallet_id_here', 1000);
$payload = $promptpay->payload();

แสดงใน HTML

use Kotchasan\Promptpay;

$promptpay = Promptpay::create('0812345678', 299.00);
$payload = $promptpay->payload();

// ใช้กับ JavaScript QR library
echo '<div id="qrcode" data-payload="' . htmlspecialchars($payload) . '"></div>';

EMV QR Code Specification

Payload ที่สร้างเป็นไปตามมาตรฐาน EMV® QR Code สำหรับ PromptPay:

00020101021129370016A000000677010111011300661234567895802TH530376463047CC1
Field Description
00 Payload Format Indicator
01 Point of Initiation Method
29 Merchant Account Information (PromptPay)
58 Country Code (TH)
53 Currency Code (764 = THB)
54 Transaction Amount
63 CRC Checksum

คลาสที่เกี่ยวข้อง

  • Barcode - สร้าง QR Code จาก payload