2 releases

0.1.1 Dec 10, 2024
0.1.0 Dec 9, 2024

#54 in Finance

Download history 302/week @ 2024-12-09

302 downloads per month

MIT license

13KB
257 lines

qris-rs

qris-rs adalah sebuah pustaka berbasis Rust yang dirancang untuk mengubah dan memparsing data QRIS (Quick Response Code Indonesian Standard). Proyek ini bertujuan untuk mempermudah pengelolaan data QRIS secara efisien, aman, dan cepat.

Fitur

  • ✅ Parsing kode QRIS menjadi struktur data yang mudah diakses.
  • ✅ Validasi data QRIS sesuai standar QRIS Nasional.
  • ✅ Mendukung konversi struktur data menjadi string QRIS.
  • ✅ Performa tinggi dengan penggunaan Rust.

Instalasi

Tambahkan pustaka ini ke dalam proyek Anda dengan menambahkan dependensi berikut pada Cargo.toml:

[dependencies]
qris = "0.1.0"

Lalu, jalankan perintah berikut untuk mengunduh dependensi:

cargo build

Penggunaan

Parsing QRIS

Untuk memparsing kode QRIS:

use qris::node::Nodes;

fn main(){
    let content = String::from("00020101021126710019ID.CO.CIMBNIAGA.WWW011878728356757817222102150002186871651250303UMI51450015ID.OR.QRNPG.WWW0215ID81275673266770303UMI5204599953033605802ID5914AABBCCD*6714516006KEDIRI61054423462120708123456786304097D");
    match &Nodes::from_str(&content) {
        Ok(parsed) => {
            println!("{:#?}", parsed);
        }
        Err(err) => eprint!("Fail: {}", err)
    }
}

Mengubah data jumlah pada qris

contoh mengubah data jumlah yang harus dibayar pada qris

use qris::node::Nodes;

fn main(){
    let content = String::from("00020101021126710019ID.CO.CIMBNIAGA.WWW011878728356757817222102150002186871651250303UMI51450015ID.OR.QRNPG.WWW0215ID81275673266770303UMI5204599953033605802ID5914AABBCCD*6714516006KEDIRI61054423462120708123456786304097D");
    match &mut Nodes::from_str(&content) {
        Ok(parsed) => {
            parsed.set_amount(20_000);
            parsed.rewrite_crc16();
            print!("{}", parsed.dumps());
        }
        Err(err) => eprint!("Fail: {}", err)
    }
}

Kontribusi

Kontribusi sangat diterima! Jika Anda ingin berkontribusi:

  1. Fork repositori ini.
  2. Buat branch fitur Anda (git checkout -b fitur-anda).
  3. Commit perubahan Anda (git commit -m 'Tambah fitur baru').
  4. Push branch Anda (git push origin fitur-anda).
  5. Buat Pull Request.

Lisensi

Proyek ini dilisensikan di bawah MIT License.

No runtime deps