Have ideas to improve npm?Join in the discussion! »

    promptpay-qr

    0.4.4 • Public • Published

    promptpay-qr npm version

    Mobile web app, command line app, and JavaScript library to generate QR Code payload for PromptPay.

    Introduction

    The Bank of Thailand introduced a PromptPay QRCode Standard that works with most mobile banking apps in Thailand.

    By generating a QR code, users of mobile banking apps can scan your QR code, and transfer money to your PromptPay account instantly.

    In this repository:

    What’s in a QR code

    ⚠️ Read this section to understand privacy implications of using PromptPay QR code ⚠️

    • The PromptPay QR code is based on EMV QRCPS Merchant Presented Mode specification.

    • The QR code contains the PromptPay ID. This means anyone who sees the QR code can find out your PromptPay ID (Phone number, National ID number, e-Wallet ID). Please treat the QR code like your personal information.

    • The QR code can optionally contain the transfer amount. Mobile banking apps use this number to pre-fill the amount for convenience.

    Mobile web app

    You can quickly receive money from your home screen.

    For example, if you want to collect 80 Baht from each friend, you can open the app, type in 80, and show the QR code. It takes less than 5 seconds.

    To use it:

    1. Open Chrome (on Android) or Safari (iOS).

    2. Go to https://promptpay2.me/.

    3. Set your PromptPay ID.

    4. “Add to Home Screen.”

    Features:

    • The app remembers your PromptPay ID, so you don’t have to enter the information each time.

    • It is a Progressive Web App, so you can add to home screen and it will work offline (Android).

    • No personal data is sent to any server. Your PromptPay ID stays in your phone/computer.

    CLI

    You can receive money from your terminal.

    Install Node.js and run this command to install promptpay-qr in your machine:

    npm install -g promptpay-qr
    

    Run this command to generate a QR code:

    promptpay-qr 081-xxx-xxxx
    promptpay-qr 1-xxxx-xxxxx-xx-x --amount 4.22
    

    Then QR code will be printed in the terminal.

    API

    generatePayload(idOrPhoneNo, { amount })
    

    Returns a string which should be rendered as a QR code.

    References

    Implementation in other languages

    These libraries are written by other developers:

    License

    The MIT License

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

    Keywords

    none

    Install

    npm i promptpay-qr

    DownloadsWeekly Downloads

    318

    Version

    0.4.4

    License

    MIT

    Last publish

    Collaborators

    • avatar