Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
com.github.pheerathach:promptpay
Advanced tools
As Bank of Thailand (BOT) initialized the PromptPay project enabling Thai people to make a payment via its platform through QR code with the content in EMVCo format, this Java library would help generating QR or QR's content for people or businesses in order to receive or make a payment.
ไลบรารีช่วยสร้าง QR สำหรับรับชำระเงินด้วย PromptPay โดยสามารถสร้าง
ไลบรารีนี้ต้องการ Java เวอร์ชัน 8 ขึ้นไป
// รับชำระผ่าน PromptPay เบอร์ 081-234-5678 จำนวนเงิน: <ให้ผู้ชำระระบุ>
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().staticQR().creditTransfer().mobileNumber("0812345678").build();
// รับชำระผ่าน PromptPay เลขประจำตัวประชาชน 0-0000-00000-00-0 จำนวนเงิน: <ให้ผู้ชำระระบุ>
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().staticQR().creditTransfer().nationalId("0000000000000").build();
// รับชำระผ่าน PromptPay E-Wallet ID 000000000000000 จำนวนเงิน: <ให้ผู้ชำระระบุ>
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().staticQR().creditTransfer().eWalletId("000000000000000").build();
// รับชำระผ่าน PromptPay เบอร์ 081-234-5678 จำนวนเงิน: 10 บาท
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().staticQR().creditTransfer().mobileNumber("0812345678").amount(new BigDecimal("10.00")).build();
// รับชำระผ่าน PromptPay เลขประจำตัวประชาชน 0-0000-00000-00-0 จำนวนเงิน: 136.25 บาท
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().staticQR().creditTransfer().nationalId("0000000000000").amount(new BigDecimal("136.25")).build();
// รับชำระผ่าน PromptPay E-Wallet ID 000000000000000 จำนวนเงิน: 0.01 บาท
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().staticQR().creditTransfer().eWalletId("000000000000000").amount(new BigDecimal("0.01")).build();
// รับชำระผ่าน PromptPay เลขประจำตัวผู้เสียภาษี 0000000000000 + 99 (SUFFIX 2 หลัก)
// รหัสอ้างอิง 1: 15123141 รหัสอ้างอิง 2: 3654112 จำนวนเงิน: <ให้ผู้ชำระระบุ>
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().dynamicQR().billPayment().billerId("000000000000099").ref1("15123141").ref2("3654112").build();
// รับชำระผ่าน PromptPay เลขประจำตัวผู้เสียภาษี 0000000000000 + 99 (SUFFIX 2 หลัก)
// รหัสอ้างอิง 1: 15123141 รหัสอ้างอิง 2: 3654112 จำนวนเงิน: 200.00 บาท
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().dynamicQR().billPayment().billerId("000000000000099").ref1("15123141").ref2("3654112").amount(new BigDecimal("200.00")).build();
// รับชำระผ่าน PromptPay เลขประจำตัวผู้เสียภาษี 0000000000000 + 99 (SUFFIX 2 หลัก)
// รหัสอ้างอิง 1: 15123141 รหัสอ้างอิง 2: 3654112 รหัสอ้างอิง 3: ABCD จำนวนเงิน: 200.00 บาท
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().dynamicQR().billPayment().billerId("000000000000099").ref1("15123141").ref2("3654112").ref3("ABCD").amount(new BigDecimal("200.00")).build();
// รับชำระผ่าน PromptPay เลขประจำตัวผู้เสียภาษี 0000000000000 + 99 (SUFFIX 2 หลัก)
// รหัสอ้างอิง 1: 15123141 รหัสอ้างอิง 3: ABCD จำนวนเงิน: 100.00 บาท
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().dynamicQR().billPayment().billerId("000000000000099").ref1("15123141").ref3("ABCD").amount(new BigDecimal("100.00")).build();
// รับชำระแบบ Bill Payment เดิมตามธปท. เลขประจำตัวผู้เสียภาษี 0000000000000 + 99 (SUFFIX 2 หลัก)
// รหัสอ้างอิง 1: 15123141 รหัสอ้างอิง 2: 3654112 จำนวนเงิน: <ให้ผู้ชำระระบุ>
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().bot().billPayment().billerId("000000000000099").ref1("15123141").ref2("3654112").build();
<dependencies>
...
<dependency>
<groupId>com.github.pheerathach</groupId>
<artifactId>promptpay</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
ThaiQRPromptPay qr = new ThaiQRPromptPay.Builder().dynamicQR().creditTransfer().mobileNumber("0812345678").amount(new BigDecimal("100.00")).build();
2.1. หากต้องการเนื้อหาสำหรับนำไปสร้างรูป QR
String content = qr.generateContent();
2.2. หากต้องการให้ไลบรารีสร้างรูป QR ให้
2.2.1. เป็นไฟล์ PNG
qr.draw(300, 300, new File("D:\\qr.png")); // width 300 x height 300 pixels | save to D:\qr.png
2.2.2. เป็น Base64 String (PNG)
qr.drawToBase64(300, 300); // width 300 x height 300 pixels
2.2.3. เป็น byte[]
qr.drawToByteArray(400, 400); // width 400 x height 400 pixels
https://www.bot.or.th/Thai/FIPCS/Documents/FPG/2562/ThaiPDF/25620084.pdf
https://github.com/zxing/zxing
https://commons.apache.org/proper/commons-codec/
https://stackoverflow.com/questions/13209364/convert-c-crc16-to-java-crc16/13209435
FAQs
As Bank of Thailand (BOT) initialized the PromptPay project enabling Thai people to make a payment via its platform through QR code with the content in EMVCo format, this Java library would help generating QR or QR's content for people or businesses in order to receive or make a payment.
We found that com.github.pheerathach:promptpay demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.