zakkistore

package module
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 31, 2026 License: MIT Imports: 6 Imported by: 0

README

🐹 Zakkistore SDK for Go

Official B2B Client Library for Zakki Store API Gateway

Pustaka Go (Golang) resmi untuk memudahkan integrasi layanan Host-to-Host (H2H) prabayar/pascabayar, payment gateway QRIS otomatis, perbankan Virtual Account (VA), Noktel OTP virtual, mining reward, dan gacha koin Zakki Store ke dalam proyek Go Anda (Gin, Fiber, Echo, native Go backend, bot Telegram/Discord, dll).


🚀 Instalasi & Inisialisasi

Instal pustaka dari terminal proyek Go Anda:

go get github.com/MrLow12/zakkistore-sdk-go
Inisialisasi Klien
Mode 1: Inisialisasi Instan (Official Gateway by Default)

Sangat praktis! SDK otomatis mengarah ke gateway server resmi (https://qris.zakki.store).

package main

import (
	"fmt"
	"log"
	zakkistore "github.com/MrLow12/zakkistore-sdk-go"
)

func main() {
	// Klien otomatis mengarah ke server resmi!
	zakki, err := zakkistore.New("API_TOKEN_MEMBER_ANDA")
	if err != nil {
		log.Fatalf("Gagal inisialisasi: %v", err)
	}

	// Contoh: Melakukan Health Check Server
	status, err := zakki.Status()
	if err != nil {
		log.Fatalf("Error: %v", err)
	}
	fmt.Printf("Status Server: %v\n", status["status"])
}
Mode 2: Inisialisasi dengan Konfigurasi Kustom

Gunakan opsi ini jika Anda ingin melakukan kustomisasi base URL (migrasi domain) atau mengaktifkan fitur penarikan otomatis (Auto-Withdraw).

zakki, err := zakkistore.NewWithConfig(zakkistore.Config{
	BaseURL:      "https://qris.zakki.store", // Domain custom/resmi
	Token:        "API_TOKEN_MEMBER_ANDA",
	IDUser:       "IBO99",
	Email:        "member@gmail.com",
	PIN:          "123456",                   // Wajib untuk tabung & tarik
	AutoWithdraw: true,                       // Aktifkan auto-withdrawal saldo bank!
})

🛠️ Fitur Unggulan

🔄 Auto-Withdraw Saldo VA

Jika opsi AutoWithdraw: true diaktifkan, SDK akan memicu penarikan dana VA bank otomatis secara real-time menjadi saldo utama aplikasi (BukaOlshop) ketika fungsi zakki.Checkbank() dipanggil.

💡 Dual-Flow Pascabayar & Bebas Nominal
  • Pascabayar (PLN/BPJS/PDAM): Inquiry tagihan terlebih dahulu, lalu bayar dengan format tujuan [ID_Pelanggan].[Nominal_Tagihan] (Contoh: 122345678901.150000).
  • E-Wallet Bebas Nominal: Kirim transfer E-Wallet nominal kustom dengan format tujuan [No_HP].[Nominal] (Contoh: 08123456789.25000).

📑 Daftar Referensi Metode Lengkap

SDK Go ini mendukung secara penuh seluruh 25 fungsi resmi dengan nama dan perilaku yang konsisten dengan SDK versi Node.js (NPM), Python (PyPI), dan PHP (Composer):

1. Payment Gateway (QRIS Top Up)
  • zakki.Topup(nominal int) — Membuat QRIS dinamis instan dengan nominal kode unik.
  • zakki.Cektopup(idtopup string) — Cek status pembayaran QRIS.
  • zakki.Cancel(idTransaksi string, allPending bool) — Batalkan transaksi pending (Daftar pending, batal satu, atau batal massal).
2. Transaksi H2H
  • zakki.Listkode(jenis, productType string) — Katalog kode produk aktif, deskripsi, dan harga.
  • zakki.H2H(params zakkistore.H2HParams) — Mengirim order transaksi H2H.
  • zakki.H2HSimple(kode, tujuan, refID string) — Versi sederhana posisional untuk memicu order H2H.
  • zakki.Cekh2h(idTrx string) — Cek detail status pengisian, SN, dan harga beli order H2H.
  • zakki.Myh2h() — Mengambil 20 riwayat pembelian H2H terupdate.
3. Perbankan & Transfer VA
  • zakki.Checkbank() — Cek saldo, VA member, mutasi, dan pemicu Auto-Withdraw.
  • zakki.Checkname(number string) — Verifikasi nama asli pemilik VA Bank Zakki tujuan.
  • zakki.Transfer(params zakkistore.TransferParams) — Transfer saldo antar Virtual Account member Bank Zakki.
  • zakki.TransferSimple(to string, amount int) — Versi sederhana posisional untuk transfer saldo.
  • zakki.Tabung(jumlah int) — Menabung / deposit saldo dari aplikasi utama (BukaOlshop) ke Bank (butuh PIN).
  • zakki.Tarik(jumlah int) — Menarik dana tabungan ke saldo aplikasi (butuh PIN).
  • zakki.Checkmutasi(mutasiType string) — Riwayat mutasi Tarik/Tabung (tarik, tabung, all).
4. Noktel Marketplace (OTP Virtual)
  • zakki.NoktelStok() — Cek stok nomor virtual yang ready.
  • zakki.NoktelBuy(category string) — Membeli nomor virtual baru untuk OTP.
  • zakki.NoktelGetOtp(accountID string) — Menarik kode OTP Telegram secara real-time.
  • zakki.NoktelCancel(invoiceID string) — Membatalkan nomor yang pending OTP & auto-refund.
  • zakki.NoktelHistory() — Mengambil daftar riwayat pembelian Noktel.
5. Reward Komputasi & Game
  • zakki.Cekmining() — Cek status kesulitan global, block reward, dan miner aktif.
  • zakki.Mymining() — Riwayat koin mining SHA256 milik akun Anda.
  • zakki.Cekgacha() — Statistik poin, kemenangan, dan keuntungan gacha member.
6. Keamanan & Utilitas
  • zakki.Whitelistip(ip string) — Whitelist IP server Anda untuk otorisasi API H2H.
  • zakki.Delwhitelistip(ip string) — Hapus IP server dari whitelist.
  • zakki.Leaderboard(limit int, period string) — Mengambil peringkat sultan topup teraktif.
  • zakki.Status() — Informasi beban CPU, metrik finansial, dan kesehatan sistem.

🛡️ Protokol Keamanan API

[!WARNING] Selalu jalankan SDK ini di sisi backend (Server-side)! Jangan pernah mengekspos API Token dan PIN Anda di sisi frontend / client-side publik demi mencegah potensi pencurian saldo.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	BaseURL      string
	Token        string
	IDUser       string
	Email        string
	PIN          string
	AutoWithdraw bool
}

type H2HParams

type H2HParams struct {
	Kode   string `json:"kode"`
	Tujuan string `json:"tujuan"`
	RefID  string `json:"refID"`
}

type TransferParams

type TransferParams struct {
	To     string `json:"to"`
	Amount int    `json:"amount"`
}

type ZakkiStore

type ZakkiStore struct {
	// contains filtered or unexported fields
}

func New

func New(token string) (*ZakkiStore, error)

*

  • Inisialisasi Klien ZakkiStore baru menggunakan default base URL Gateway Resmi.

func NewWithConfig

func NewWithConfig(cfg Config) (*ZakkiStore, error)

*

  • Inisialisasi Klien ZakkiStore baru dengan konfigurasi kustom lengkap.

func (*ZakkiStore) Cancel

func (z *ZakkiStore) Cancel(idTransaksi string, allPending bool) (map[string]interface{}, error)

func (*ZakkiStore) Cekgacha

func (z *ZakkiStore) Cekgacha() (map[string]interface{}, error)

func (*ZakkiStore) Cekh2h

func (z *ZakkiStore) Cekh2h(idTrx string) (map[string]interface{}, error)

func (*ZakkiStore) Cekmining

func (z *ZakkiStore) Cekmining() (map[string]interface{}, error)

func (*ZakkiStore) Cektopup

func (z *ZakkiStore) Cektopup(idtopup string) (map[string]interface{}, error)

func (*ZakkiStore) Checkbank

func (z *ZakkiStore) Checkbank() (map[string]interface{}, error)

func (*ZakkiStore) Checkmutasi

func (z *ZakkiStore) Checkmutasi(mutasiType string) (map[string]interface{}, error)

func (*ZakkiStore) Checkname

func (z *ZakkiStore) Checkname(number string) (map[string]interface{}, error)

func (*ZakkiStore) Delwhitelistip

func (z *ZakkiStore) Delwhitelistip(ip string) (map[string]interface{}, error)

func (*ZakkiStore) EnableAutoWithdraw

func (z *ZakkiStore) EnableAutoWithdraw(status bool)

func (*ZakkiStore) H2H

func (z *ZakkiStore) H2H(params H2HParams) (map[string]interface{}, error)

func (*ZakkiStore) H2HSimple

func (z *ZakkiStore) H2HSimple(kode, tujuan, refID string) (map[string]interface{}, error)

func (*ZakkiStore) Leaderboard

func (z *ZakkiStore) Leaderboard(limit int, period string) (map[string]interface{}, error)

func (*ZakkiStore) Listkode

func (z *ZakkiStore) Listkode(jenis, productType string) (map[string]interface{}, error)

func (*ZakkiStore) Myh2h

func (z *ZakkiStore) Myh2h() (map[string]interface{}, error)

func (*ZakkiStore) Mymining

func (z *ZakkiStore) Mymining() (map[string]interface{}, error)

func (*ZakkiStore) NoktelBuy

func (z *ZakkiStore) NoktelBuy(category string) (map[string]interface{}, error)

func (*ZakkiStore) NoktelCancel

func (z *ZakkiStore) NoktelCancel(invoiceID string) (map[string]interface{}, error)

func (*ZakkiStore) NoktelGetOtp

func (z *ZakkiStore) NoktelGetOtp(accountID string) (map[string]interface{}, error)

func (*ZakkiStore) NoktelHistory

func (z *ZakkiStore) NoktelHistory() (map[string]interface{}, error)

func (*ZakkiStore) NoktelStok

func (z *ZakkiStore) NoktelStok() (map[string]interface{}, error)

func (*ZakkiStore) Status

func (z *ZakkiStore) Status() (map[string]interface{}, error)

func (*ZakkiStore) Tabung

func (z *ZakkiStore) Tabung(jumlah int) (map[string]interface{}, error)

func (*ZakkiStore) Tarik

func (z *ZakkiStore) Tarik(jumlah int) (map[string]interface{}, error)

func (*ZakkiStore) Topup

func (z *ZakkiStore) Topup(nominal int) (map[string]interface{}, error)

func (*ZakkiStore) Transfer

func (z *ZakkiStore) Transfer(params TransferParams) (map[string]interface{}, error)

func (*ZakkiStore) TransferSimple

func (z *ZakkiStore) TransferSimple(to string, amount int) (map[string]interface{}, error)

func (*ZakkiStore) Whitelistip

func (z *ZakkiStore) Whitelistip(ip string) (map[string]interface{}, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL