Berinteraksi dengan Solana

Sebelum membangun alur pembayaran, Anda perlu terhubung ke Solana dan memahami cara melakukan kueri data jaringan. Panduan ini mencakup dasar-dasarnya: membuat koneksi dan menggunakan metode RPC yang Anda perlukan untuk pembayaran menggunakan @solana/kit TypeScript SDK dan Solana CLI. Selain itu, kami akan membahas dasar-dasar penggunaan Solana Explorer untuk memverifikasi pembayaran secara manual, memeriksa akun, dan men-debug masalah.

Terhubung ke Solana

RPC API Solana adalah cara utama untuk berinteraksi dengan jaringan secara terprogram. URL RPC Anda secara efektif adalah kunci API ke jaringan.

Jangan gunakan RPC publik untuk produksi

Endpoint publik (api.mainnet-beta.solana.com, api.devnet.solana.com) memiliki batasan rate, tidak memiliki SLA, dan tidak cocok untuk alur pembayaran produksi. Gunakan penyedia RPC untuk mengamankan endpoint RPC pribadi untuk deployment produksi.

Untuk pengembangan dan pengujian, Anda dapat menggunakan endpoint publik dengan batasan rate.

Buat klien RPC untuk berinteraksi dengan jaringan:

import { createSolanaRpc, createSolanaRpcSubscriptions } from "@solana/kit";
const rpc = createSolanaRpc("https://api.mainnet-beta.solana.com");
const rpcSubscriptions = createSolanaRpcSubscriptions(
"wss://api.mainnet-beta.solana.com"
);

Untuk pengembangan, gunakan devnet (https://api.devnet.solana.com) atau validator lokal seperti Surfpool.

Metode RPC umum

JSON-RPC API Solana menyediakan metode untuk melakukan kueri jaringan. Berikut adalah metode yang paling sering Anda gunakan untuk alur pembayaran.

Mendapatkan info akun

Semua akun di Solana dapat dialamatkan dengan kunci publik mereka. Gunakan metode RPC getAccountInfo untuk mengambil informasi tentang akun mana pun. Metode getAccountInfo mengembalikan objek AccountInfo, yang berisi kunci publik akun, saldo SOL, data, dan beberapa metadata lainnya.

Field data adalah string yang dikodekan base64 dari data akun. Anda dapat mengkodekannya menjadi bytes menggunakan metode getBase64Codec dari paket @solana/kit dan kemudian mendekodekannya menjadi objek yang dapat dibaca menggunakan codec yang diharapkan (jika diketahui) untuk data akun (misalnya, getTokenCodec untuk token account).

const accountInfo = await rpc
.getAccountInfo(address("7EcDhSYGxXyscszYEp35KHN8vvw3svAuLKTzXwCFLtV"), {
encoding: "base64"
})
.send();
const dataBytes = getBase64Codec().encode(accountInfo.value.data);
const parsedTokenData = getTokenCodec().decode(dataBytes);
console.log(parsedTokenData);

Mendapatkan saldo token

Periksa saldo token account menggunakan metode RPC getTokenAccountBalance:

const balance = await rpc.getTokenAccountBalance(tokenAccountAddress).send();
console.log(balance.value.uiAmount); // Human-readable (e.g., 100.50)
console.log(balance.value.amount); // Base units (e.g., "100500000")

Membangun transaksi

Setiap transaksi memerlukan blockhash terbaru untuk memastikan validitasnya (dan tidak kedaluwarsa). Ambil blockhash sebelum membuat transaksi pembayaran menggunakan metode RPC getLatestBlockhash:

const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();

Blockhash kedaluwarsa setelah ~60 detik. Ambil yang baru segera sebelum menandatangani dan mengirim.

Memeriksa status transaksi

Verifikasi transaksi yang telah diselesaikan menggunakan metode RPC getSignatureStatuses:

const status = await rpc.getSignatureStatuses([signature]).send();
const result = status.value[0];
// result.confirmationStatus: "processed" | "confirmed" | "finalized"

Mendapatkan detail transaksi

Ambil detail lengkap dari transaksi yang dikonfirmasi menggunakan metode RPC getTransaction:

const transaction = await rpc
.getTransaction(signature, { maxSupportedTransactionVersion: 0 })
.send();

Riwayat transaksi

Dapatkan transaksi terbaru untuk sebuah alamat menggunakan metode RPC getSignaturesForAddress:

const signatures = await rpc
.getSignaturesForAddress(walletAddress, { limit: 10 })
.send();

Untuk pemantauan pembayaran yang komprehensif, lihat Terima Pembayaran yang mencakup webhook dan deteksi transaksi secara real-time.

Menjelajahi data publik

Buku besar publik Solana berarti setiap transaksi, token account, dan mint sepenuhnya dapat diaudit. Block explorer memungkinkan Anda memverifikasi pembayaran secara manual, memeriksa akun, dan men-debug masalah tanpa menulis kode.

Yang dapat Anda cari:

  • Verifikasi pembayaran yang diselesaikan
  • Periksa saldo token account
  • Debug transaksi yang gagal
  • Cari detail mint (supply, desimal, authority)

Explorer umum: Solana Explorer, SolanaFM, Solscan, Orb

Contoh tautan:

Is this page helpful?

Daftar Isi

Edit Halaman

Dikelola oleh

© 2026 Yayasan Solana.
Semua hak dilindungi.
Terhubung