saweria-createqr
v1.1.4
Published
An Library that allow you create some qris on saweria
Maintainers
Readme

Saweria Qr Payment api
and saweria.co unofficial api that can create qris and check it automatically
Featured
| todos | status | |--|--| | Checking Auto payment | ✅ | | Checking User balance account | ✅ | | Set Expiry duration of payment | ✅ | | Catbox.moe as storage | ✅ | | Ai message auto generated | ✅ | | Auto check payment without logged in | ✅ | | set webhook from api | ✅ | | esm support | ⛔ |
Algorithm
How auto check payments works :)
we doesnt steal your account

Payment api
Creating Payment basic
This simple method to create payment using saweria
const { SumshiiySawer } = require('saweria-createqr');
const sawer = new SumshiiySawer({ username: 'your saweria username', email: 'your saweria email', password: 'your saweria password'});
(async () => {
await sawer.login() // Login to your saweria account first
await sawer.createPaymentQr(amount, duration) // the duration in minute
//example
const payment = await sawer.createPaymentQr(1000,30) // expired in 30 minute
console.log(payment)
})Response Status example
{
author: '@aisbirkoenz',
trx_id: '21a8c370-5062-49af-b8dc-2a2d3cf3396c',
status: 'Pending',
status_simbolic: '⏳ Pending',
message: 'Semangat terus broo! Kamu bisa!',
amount: 1000,
qr_string: '00020101021226570011ID.DANA.WWW011893600915016937059202091693705920303UME51440014ID.CO.QRIS.WWW0215ID20210917307330303UME520473925303360540410085802ID5907saweria6015Kota Jakarta Pu61051034062720115ree9HxQL8uRztkJ60490011ID.DANA.WWW0425MER20210714007745096086410501163048419',
created_at: 'Mon, 03 Feb 2025 16:36:07 GMT',
invoice_url: 'https://saweria.co/qris/21a8c370-5062-49af-b8dc-2a2d3cf3396c',
total_dibayar: 1008,
saweria_username: 'aisbirpedia',
saweria_apikey: 'f870a41e-997f-4523-a6c1-a1cdfdf10eab',
qr_image: 'https://files.catbox.moe/a9p9cg.jpg',
expired_in: 2025-02-03T16:37:08.356Z
}Cek Payment Status V1
You must logged in to use payment status v1
const { SumshiiySawer } = require('saweria-createqr');
const sawer = new SumshiiySawer({ username: 'your saweria username', email: 'your saweria email', password: 'your saweria password'});
(async () => {
await sawer.cekPaymentV1(trxid) // trx id received after createpayment
//example
const payment = await sawer.createPaymentQr(1000,30) // expired in 30 minute
const tes = setInterval(async() => {
const paymentStatus = await sawer.cekpayment(p.trx_id)
console.log(paymentStatus)
if (paymentStatus.status === "Paid") {
console.log('Payment Berhasil, Menghentikan interval')
clearInterval(tes)
}
}, 7000);
})example if pending
{
author: '@aisbirkoenz',
code: 200,
trx_id: '0f141a97-80a0-48c7-89ea-8f4d9e277abf',
username: 'aisbirpedia',
status: 'Pending',
status_simbolic: '⏳ Pending',
amount: 1000,
invoice_url: 'https://saweria.co/qris/0f141a97-80a0-48c7-89ea-8f4d9e277abf',
total_dibayar: 1008,
created_at: 'Mon, 03 Feb 2025 16:37:02 GMT',
expired_in: '2025-02-03T16:38:02.602Z'
}example if paid
{
author: '@aisbirkoenz',
code: 200,
trx_id: '0f141a97-80a0-48c7-89ea-8f4d9e277abf',
username: 'aisbirpedia',
status: 'Paid',
status_simbolic: '✅ Paid',
amount: 1000,
invoice_url: 'https://saweria.co/qris/0f141a97-80a0-48c7-89ea-8f4d9e277abf',
total_dibayar: 1008,
created_at: 'Mon, 03 Feb 2025 16:37:02 GMT',
expired_in: '2025-02-03T16:38:02.602Z'
}example if expired
{
author: '@aisbirkoenz',
code: 200,
trx_id: '0f141a97-80a0-48c7-89ea-8f4d9e277abf',
username: 'aisbirpedia',
status: 'Expired',
status_simbolic: '⛔ Expired',
amount: 1000,
invoice_url: 'https://saweria.co/qris/0f141a97-80a0-48c7-89ea-8f4d9e277abf',
total_dibayar: 1008,
created_at: 'Mon, 03 Feb 2025 16:37:02 GMT',
expired_in: '2025-02-03T16:38:02.602Z'
}Cek Payment Status V2
You Doesn't need logged in
const { SumshiiySawer } = require('saweria-createqr');
const sawer = new SumshiiySawer({ username: 'your saweria username', email: 'your saweria email', password: 'your saweria password'});
(async () => {
await sawer.cekPaymentV2(trxid) // trx id received after createpayment
//example
const payment = await sawer.cekPaymentV2(1000,30) // expired in 30 minute
const tes = setInterval(async() => {
const paymentStatus = await sawer.cekPaymentV2(p.trx_id)
console.log(paymentStatus)
if (paymentStatus.status === "Paid") {
console.log('Payment Berhasil, Menghentikan interval')
clearInterval(tes)
}
}, 7000);
})example if pending
{
author: '@aisbirkoenz',
code: 200,
trx_id: '0f141a97-80a0-48c7-89ea-8f4d9e277abf',
username: 'aisbirpedia',
status: 'Pending',
status_simbolic: '⏳ Pending',
amount: 1000,
invoice_url: 'https://saweria.co/qris/0f141a97-80a0-48c7-89ea-8f4d9e277abf',
total_dibayar: 1008,
created_at: 'Mon, 03 Feb 2025 16:37:02 GMT',
expired_in: '2025-02-03T16:38:02.602Z'
}example if paid
{
author: '@aisbirkoenz',
code: 200,
trx_id: '0f141a97-80a0-48c7-89ea-8f4d9e277abf',
username: 'aisbirpedia',
status: 'Paid',
status_simbolic: '✅ Paid',
amount: 1000,
invoice_url: 'https://saweria.co/qris/0f141a97-80a0-48c7-89ea-8f4d9e277abf',
total_dibayar: 1008,
created_at: 'Mon, 03 Feb 2025 16:37:02 GMT',
expired_in: '2025-02-03T16:38:02.602Z'
}example if expired
{
author: '@aisbirkoenz',
code: 200,
trx_id: '0f141a97-80a0-48c7-89ea-8f4d9e277abf',
username: 'aisbirpedia',
status: 'Expired',
status_simbolic: '⛔ Expired',
amount: 1000,
invoice_url: 'https://saweria.co/qris/0f141a97-80a0-48c7-89ea-8f4d9e277abf',
total_dibayar: 1008,
created_at: 'Mon, 03 Feb 2025 16:37:02 GMT',
expired_in: '2025-02-03T16:38:02.602Z'
}Misc
Set Webhook url
const { SumshiiySawer } = require('saweria-createqr');
const sawer = new SumshiiySawer({ username: 'your saweria username', email: 'your saweria email', password: 'your saweria password'});
(async () => {
const webhook = await sawer.setWebhook()
console.log(webhook)
})Example result
{
status: true,
message: 'Webhook Berhasil Di Set',
type: 'WEBHOOK'
}Cek balance
you must be logged in to cek balance
const { SumshiiySawer } = require('saweria-createqr');
const sawer = new SumshiiySawer({ username: 'your saweria username', email: 'your saweria email', password: 'your saweria password'});
(async () => {
const saldoku = await sawer.getSaldo()
console.log(saldoku)
})response status
{
author: '@aisbirkoenz',
balance: 99999999999999
}Set Fee
you must be logged in to settings fee
const { SumshiiySawer } = require('saweria-createqr');
const sawer = new SumshiiySawer({ username: 'your saweria username', email: 'your saweria email', password: 'your saweria password'});
(async () => {
const saldoku = await sawer.setFee('buyer / seller')
console.log(saldoku)
})response status
{ status: true, message: 'Fee Berhasil Di Set ke STREAMER' }Information🚨
- Use for fraud and phishing purposes, we will not be responsible, we only make modules so that people can make further integrations on saweria.co
- All Copyright Regarded by sumshiiy developer team Any security purpose? mail us [email protected]
