Solana ile etkileşim

Ödeme akışları oluşturmadan önce Solana'ya bağlanmanız ve ağ verilerini nasıl sorgulayacağınızı anlamanız gerekir. Bu kılavuz temel konuları kapsar: bağlantı kurma ve @solana/kit TypeScript SDK'sı ve Solana CLI kullanarak ödemeler için ihtiyaç duyacağınız RPC yöntemlerini kullanma. Ayrıca, ödemeleri manuel olarak doğrulamak, hesapları incelemek ve sorunları gidermek için Solana Explorer kullanımının temellerini ele alacağız.

Solana'ya bağlanma

Solana'nın RPC API'si, ağ ile programatik olarak etkileşim kurmanın birincil yoludur. RPC URL'niz, ağa erişim için etkin bir API anahtarıdır.

Üretim için genel RPC kullanmayın

Genel uç noktalar (api.mainnet-beta.solana.com, api.devnet.solana.com) hız sınırlıdır, SLA'sı yoktur ve üretim ödeme akışları için uygun değildir. Üretim dağıtımları için özel bir RPC uç noktası güvence altına almak üzere bir RPC sağlayıcısı kullanın.

Geliştirme ve test için hız sınırlı genel uç noktaları kullanabilirsiniz.

Ağ ile etkileşim kurmak için bir RPC istemcisi oluşturun:

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

Geliştirme için devnet (https://api.devnet.solana.com) veya Surfpool gibi yerel bir validator kullanın.

Yaygın RPC yöntemleri

Solana'nın JSON-RPC API'si, ağı sorgulamak için yöntemler sunar. Ödeme akışları için en çok kullanacağınız yöntemler şunlardır.

Hesap bilgilerini alma

Solana'daki tüm hesaplar, genel anahtarları ile adreslenebilir. Herhangi bir hesap hakkında bilgi almak için getAccountInfo RPC yöntemini kullanın. getAccountInfo yöntemi, hesabın genel anahtarını, SOL bakiyesini, verisini ve diğer bazı meta verileri içeren bir AccountInfo nesnesi döndürür.

data alanı, hesabın verilerinin base64 kodlu bir dizesidir. Bunu @solana/kit paketindeki getBase64Codec metodunu kullanarak baytlara kodlayabilir ve ardından hesabın verileri için beklenen codec'i (biliniyorsa) kullanarak okunabilir bir nesneye çözebilirsiniz (örneğin, token hesapları için getTokenCodec).

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);

Token bakiyelerini alma

Bir token hesabının bakiyesini getTokenAccountBalance RPC metodunu kullanarak kontrol edin:

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")

İşlem oluşturma

Her işlemin geçerli olduğundan (ve eskimediğinden) emin olmak için yakın tarihli bir blockhash'e ihtiyacı vardır. Bir ödeme işlemi oluşturmadan önce getLatestBlockhash RPC metodunu kullanarak bir tane alın:

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

Blockhash'ler yaklaşık 60 saniye sonra sona erer. İmzalamadan ve göndermeden hemen önce yeni bir tane alın.

İşlem durumunu kontrol etme

Bir işlemin sonuçlandığını getSignatureStatuses RPC metodunu kullanarak doğrulayın:

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

İşlem detaylarını alma

Onaylanmış bir işlemin tüm detaylarını getTransaction RPC metodu kullanarak alın:

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

İşlem geçmişi

Bir adres için son işlemleri getSignaturesForAddress RPC metodu kullanarak alın:

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

Kapsamlı ödeme izleme için, webhook'ları ve gerçek zamanlı işlem tespitini kapsayan Ödeme kabul etme bölümüne bakın.

Genel verileri keşfetme

Solana'nın genel defteri, her işlemin, token hesabının ve mint'in tamamen denetlenebilir olduğu anlamına gelir. Blok gezginleri, kod yazmadan ödemeleri manuel olarak doğrulamanıza, hesapları incelemenize ve sorunları ayıklamanıza olanak tanır.

Arayabileceğiniz bilgiler:

  • Bir ödemenin gerçekleştiğini doğrulama
  • Token hesap bakiyelerini inceleme
  • Başarısız işlemleri ayıklama
  • Mint detaylarını arama (arz, ondalık basamak, yetki)

Yaygın gezginler: Solana Explorer, SolanaFM, Solscan, Orb

Örnek bağlantılar:

Is this page helpful?

İçindekiler

Sayfayı Düzenle

Yönetici

© 2026 Solana Vakfı.
Tüm hakları saklıdır.
Bağlanın