Nasıl Yapılır

TronNRG API ile USDT Transfer Ücretlerini TronNRG API Nasıl Azaltabilirsiniz?

Özetle: Standart bir USDT TRC-20 transferi 65.000 Energy tüketir. Cüzdanınızda Energy yoksa, Tron bunu karşılamak için bakiyenizden yaklaşık 13 TRX yakar. TronNRG API ile aynı Energy 4 TRX karşılığında devredersiniz; bu da her gönderimde yaklaşık %70'lik bir kesinti anlamına gelir. Entegrasyon üç HTTP işleminden oluşur: TRX dağıtım adresine gönderin, bir sahiplik mesajı imzalayın ve /delegate uç noktasına POST isteği gönderin. Bu kılavuz, her adımı kodla ve üretimde karşılaşacağınız en yaygın dört hatayla birlikte açıklamaktadır.

Başlamadan Önce

İlk API çağrısından önce üç şeye ihtiyacınız var:

TRX içeren bir Tron cüzdanı. Bir delegasyon için en az 4 TRX ödemeniz gerekir. Üretim ortamında daha fazlasına ihtiyacınız olacak; çünkü transfer başına ödeme yapacaksınız ve sıcak cüzdana periyodik olarak para yüklemek, her gönderim için mikro fonlama yapmaktan daha kolaydır.

Tron mesajlarını imzalamanın bir yolu. TronWeb tronWeb.trx.signMessageV2() işlevini sunar. Python, tronpy aracılığıyla tron.trx.sign_message_v2() işlevini kullanır. PHP ise iexbase/tron-api kütüphanesini kullanır. TronNRG API referansında dört dilde de çalışan örnekler bulunmaktadır.

Alıcı cüzdan adresi. Ödemeyi yapan cüzdana mı (en basit durum) yoksa kontrolünüzdeki farklı bir cüzdana mı (hazine yönetimi kurulumu) devredeceğinize önceden karar verin. Her ikisi de geçerlidir. İmza, ikisini birbirine bağlar.

Gerçekte ne inşa ediyorsunuz?

Mevcut USDT gönderme fonksiyonunuzun etrafında bir sarmalayıcı. Bu sarmalayıcı üç HTTP işlemi (ödeme, imzalama, talep etme) gerçekleştirir, Energy gelmesini bekler ve ardından mevcut USDT transfer mantığınızı çağırır. Tüm entegrasyon bu kadar. Aşağıdaki her şey, her adımın ayrıntısıdır.

Adım 1: TRX Sevk Adresine Gönderin

Energy ödediğiniz cüzdandan TronNRG gönderim adresine TRX gönderin. Minimum tutar 4 TRX (bu da 65.000 Energy satın alır, bir standart USDT transferi için yeterlidir). Delegasyon başına maksimum tutar 1.000 TRX (16,25 milyon Energy ). Aradaki tutarlar için fiyatlandırma, TRX başına 16.250 Energy üzerinden doğrusal olarak yapılır.

TronWeb :

Adım 1 kodu

const DISPATCH = 'TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx';
const payment = await tronWeb.trx.sendTransaction(DISPATCH, 4 * 1e6);
// payment.txid is what you will sign in Step 2

Sık yapılan hata: TRX SUN cinsinden tam sayılarla göndermek ancak dönüşümü unutmak. TRX 6 ondalık basamağı vardır. 4 TRX 4_000_000 SUN'a eşittir ( 4 * 1e6 ). Bunu yanlış yapmak ya çok az miktarda para göndermenize (delegasyon çok küçük olur) ya da yüzlerce TRX göndermenize (delegasyon başarılı olur ancak gerekenden çok daha fazla ödeme yapmış olursunuz) neden olur. sendTransaction göndermeden önce miktarı her zaman ikiye katlayın.

Adım 2: Yetkilendirme Mesajını İmzalayın

API yetkilendirmeyi talep eden kişinin ödemeyi yapan kişiyle aynı kişi olduğuna dair kanıt ister. Bunu, ödeme yapan cüzdanın özel anahtarıyla bir mesaj imzalayarak sağlarsınız. Mesaj formatı şu şekildedir:

{payment_tx_hash}:{delegate_to_address}

Burada payment_tx_hash 1. adımda döndürülen txid'dir ve delegate_to_address ise Energy devredilmesini istediğiniz Tron adresidir. TronWeb :

Adım 2 kodu

const message = `${payment.txid}:${delegateTo}`;
const signature = await tronWeb.trx.signMessageV2(message);

Bu tasarımın nedeni: API anahtarlarına olan ihtiyacı ortadan kaldırırken yetkilendirmeyi güvenli tutuyor. Özel anahtar yalnızca sizde olduğu için başka hiç kimse ödemenizi talep edemez. Ayrıca, A cüzdanından ödeme yapıp B cüzdanına yetkilendirme yapabilirsiniz, yeter ki A cüzdanını kontrol edin; bu, tek bir ödeme yöneticisinden birden fazla gönderen cüzdan için Energy finanse eden hazineler için kullanışlıdır.

Sık yapılan hata: yanlış imzalama yöntemini kullanmak. Tron iki mesaj imzalama standardı vardır: signMessage (eski) ve signMessageV2 (EIP-191 uyumlu). API V2'yi bekler. Eski yöntemi kullanmak, API imza uyuşmazlığı olarak reddettiği geçerli görünümlü bir imza üretecektir.

3. Adım: Yetki Devrinizi Talep Edin

Ödeme karmasını, hedef cüzdanı ve imzayı api.tronnrg.com/delegate adresine JSON formatında POST edin.

3. Adım kodu

const res = await fetch('https://api.tronnrg.com/delegate', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
tx_hash: payment.txid,
delegate_to: delegateTo,
signature
})
}).then(r => r.json());

API kullanacağınız üç alan döndürür: res.energy (gönderilen TRX miktarı ile 16.250'nin çarpımına eşit olan devredilen Energy miktarı), res.delegations[0].tx (zincir üzerindeki delegasyon işlem karması - bunu denetim günlüğünüz için saklayın) ve res.ref (destek sorguları için yararlı olan nrg_d_42 gibi bir referans kimliği).

Başarılı bir talebin ardından, delegasyon yaklaşık 3 saniye içinde zincir üzerinde işleme alınır. Bu işlem, o andan itibaren 15 dakika boyunca devam eder. 15 dakika sonra, kullanılmayan Energy otomatik olarak TronNRG havuzuna geri döner; kısmi iade yapılmaz.

Adım 4: USDT Transferinizi Yayınlayın

USDT transferini yayınlamadan önce, Energy gerçekten ulaştığından emin olun. Hedef cüzdanda tronWeb.trx.getAccountResources() sorgusunu, EnergyLimit - EnergyUsed değeri en az 65.000 olana kadar çalıştırın. 500 ms'lik bir aralık ve 30 saniyelik bir zaman aşımı standarttır.

Ardından USDT normalde yaptığınız gibi gönderin. Energy işlem ücretini karşılar. Gönderen cüzdandan hiçbir TRX yakılmaz.

Adım 4 deseni

// Wait for Energy to arrive
await pollUntilEnergyAvailable(delegateTo, 65000, { interval: 500, timeout: 30000 });

// Broadcast the USDT transfer
const contract = await tronWeb.contract().at( USDT _CONTRACT);
const txHash = await contract.transfer(recipient, amount).send({ feeLimit: 20_000_000 });

Her zaman bir feeLimit belirleyin. Eğer Energy bir şekilde gelmezse ve kodunuz yine de yayın yaparsa, feeLimit ağın yakabileceği maksimum TRX miktarını sınırlar. 20 TRX (20.000.000 SUN olarak ifade edilir) makul bir üst sınırdır; Energy başarısız olursa bir transferi karşılamaya yeterlidir ve bir hatanın sıcak cüzdanı boşaltmasını önleyecek şekilde sınırlandırılmıştır.

Bu size aslında ne kadar tasarruf sağlıyor?

Transfer başına tasarruf TRX cinsinden sabittir: her standart USDT gönderiminde yaklaşık 9 TRX tasarruf edilir (13 TRX yakılmasından kaçınılır, eksi 4 TRX Energy için ödenir). Bu rakam piyasa koşullarından etkilenmez; Tron ağının protokol düzeyinde bir özelliğidir. Değişen şey, bu 9 TRX kaç dolara karşılık geldiğidir.

Gerçek iş hacminde, tasarruflar hızla katlanarak artar:

Günlük Transferler Yıllık TRX Yakımı ( API yok) API aracılığıyla yıllık TRX Yılda Tasarruf Edilen TRX Miktarı Kesinti
10 ~47.450 14.600 ~32.850 ~%69
100 ~474.500 146.000 ~328.500 ~%69
500 ~2,37 milyon 730.000 ~1,64 milyon ~%69
1.000 ~4,75 milyon 1,46 milyon ~3,29 milyon ~%69
5.000 ~23,7 milyon 7,30 milyon ~16,4 milyon ~%69

Anlık TRX fiyatı üzerinden güncel USD rakamları için TronNRG işlem ücreti hesaplayıcısını kullanın; günlük işlem hacminizi girin ve gerçek zamanlı dolar tasarruflarını görün.

Günde 500'den fazla transfer gerçekleştiriyorsanız, kendi Energy üretmek için TRX kendiniz stake etmeyi de karşılaştırmanızda fayda var. Kendi kendinize stake etmenin transfer başına maliyeti neredeyse sıfırdır, ancak önemli miktarda sermaye kilitlemesi gerektirir. Stake etme başa baş noktası hesaplayıcısı, belirli hacminiz için API ve kendi kendinize stake etme çizgilerinin nerede kesiştiğini gösterir.

Sorun giderme

Sıkça karşılaşılan dört hata, önceden bilinmesi gereken önemli noktalardır:

İmza uyuşmazlığı (en yaygın olanı). API , V2 ile imzalıyor ancak siz eski signMessage yöntemiyle imzaladınız. Çözüm: signMessageV2 geçin. Tam hata kodları listesi TronNRG hata dokümantasyonunda bulunmaktadır.

Ödeme bulunamadı. Ödeme işlemi zincir üzerinde onaylanmadan önce /delegate çağrısı yaptınız. Çözüm: 1. Adımdan sonra 3. Adımı çağırmadan önce en az bir blok (yaklaşık 3 saniye) bekleyin. Kodda, tronWeb.trx.getTransaction(payment.txid) bir sonuç döndürene kadar sorgulayın.

Minimum tutarın altında ödeme yaptınız. 4 TRX az gönderdiniz. Gönderici, 4 TRX altındaki her şeyi geçersiz sayar ve otomatik olarak iade yapar. Çözüm: Göndermeden önce tutarları kontrol edin — minimum tutar sabittir.

Energy gelmedi. API tarafında yetkilendirme başarılı oldu ancak hedef cüzdanda hala Energy görünmüyor. Çözüm: Bir blok daha bekleyin ve tekrar kontrol edin — yayılma bazen 3 saniye yerine 6 saniye sürebilir. 30 saniye sonra hala Energy görünmüyorsa, gönderdiğiniz hedef cüzdan adresinin sorguladığınız adresle eşleştiğinden emin olun (burada genellikle bir yazım hatası söz konusudur).

▸ TronNRG API api.tronnrg.com adresinde yayında.

Tüm dokümantasyonu okuyun →

Kurumsal siparişler için: Webhook onayları, toplu fiyatlandırma ve özel SLA'lar için Telegram üzerinden TronNRG ile iletişime geçin .

İlgili kılavuzlar: Geliştiriciler için Tron Energy API · Büyük ölçekte USDT transferlerini otomatikleştirme · 1 dolardan daha düşük tutarda USDT gönderme

ÜÇ API ÇAĞRISI. TÜM USDT TRANSFERLERİNDE %70 İNDİRİM.

TronNRG api.tronnrg.com adresinde yayında. Minimum 4 TRX , 1.000 TRX kadar doğrusal fiyatlandırma. 3 saniyelik yetkilendirme. İmza tabanlı kimlik doğrulama, API anahtarı gerekmez. Desteklenen tüm dillerde tam dokümanlar support.tronnrg.com adresinde.

ENERJİ KİRALAMA →

FAQ

USDT transfer ücretlerini programatik olarak azaltmanın en hızlı yolu nedir?
Energy delegasyon API kullanın. api.tronnrg.com adresindeki TronNRG API ağın normalde yakacağı ~13 TRX yerine 4 TRX karşılığında 65.000 Energy (bir standart USDT transferi) delege eder; bu da yaklaşık %70'lik bir ücret indirimi anlamına gelir. Entegrasyon üç HTTP işleminden oluşur: TRX dağıtım adresine gönderin, bir sahiplik mesajı imzalayın, /delegate adresine POST isteği gönderin. USDT transferinizi yayınlamadan önce uçtan uca süre yaklaşık 3 saniyedir.
api.tronnrg.com'u kullanmak için API anahtarına ihtiyacım var mı?
Standart yetkilendirme akışı için API anahtarı gerekmez. Kimlik doğrulama, ödeme yapan cüzdanın özel anahtarıyla bir mesaj imzalanarak yapılır. Bu, zincir üzerinde sahipliği kanıtlar ve API herhangi bir hesap kurulumu, kontrol paneli veya gizli bilgi değiştirme işlemine gerek kalmadan isteği doğrulamasına olanak tanır. Webhook onayları ve özel SLA'lar ile kurumsal hacimler (günlük 500'den fazla transfer) için Telegram üzerinden TronNRG iletişime geçin.
Bir cüzdandan ödeme yapıp, Energy başka bir cüzdana devredebilir miyim?
Evet. İmzalı mesaj, ödeme işlemi hash'ini delegate_to cüzdan adresine bağlar. Ödeme yapan cüzdanın özel anahtarına sahip olduğunuz sürece, elde edilen Energy herhangi bir Tron adresine devredebilirsiniz. Bu, bir fonlama cüzdanının birden fazla gönderen cüzdan adına Energy ödediği hazine kurulumları için kullanışlıdır.
Fiyatlandırma modeli nedir? Her zaman tam olarak 4 TRX mi ödeyeceğim?
Fiyatlandırma, TRX başına 16.250 Energy üzerinden doğrusal olarak yapılır; minimum 4 TRX (65.000 Energy , bir standart transfer) ve maksimum 1.000 TRX (16.25M Energy ) şeklindedir. Yani 8 TRX iki standart transfer veya yeni bir cüzdana (iki katı maliyeti olan) bir transfer için yeterli Energy sağlar, 40 TRX ise 10 transfer için yeterli Enerji sağlar ve bu şekilde devam eder. Yetkilendirmeler 15 dakika boyunca geçerlidir, bu nedenle bir kez ödeme yapıp bu süre içinde birden fazla USDT işlemi gönderebilirsiniz.
Ödemeyi yaptıktan sonra heyet başarısız olursa ne olur?
TronNRG herhangi bir nedenle delegasyon tamamlanamazsa, TRX otomatik olarak zincir üzerinde gönderen adresine iade eder. Sıkışmış fon senaryosu yoktur. Bununla birlikte, üretimde yine de bir yedekleme mekanizması uygulamanız gerekir: /delegate çağrısı başarısız olursa veya Energy makul bir zaman aşımı içinde gelmezse, USDT transferini Energy olmadan yayınlayın (ağ TRX yakar, transfer yine de tamamlanır) ve olayı inceleme için kaydedin.
TronNRG hizmeti gözetimsiz mi?
Evet. Energy Tron yerel protokol düzeyindeki yetkilendirme mekanizması aracılığıyla devredilir. TronNRG asla USDT tutmaz, cüzdan bağlantısı gerektirmez ve hiçbir token onayı talep etmez. Hizmet, cüzdan adresinize Energy sağlar. Siz de cüzdan adresinizden USDT gönderirsiniz. İki işlem tamamen bağımsızdır. TronNRG dokunduğu tek token, Energy satın almak için gönderdiğiniz TRX .
Hangi programlama dillerinde çalışan örnekler bulunmaktadır?
support.tronnrg.com adresindeki TronNRG geliştirici dokümantasyonu, JavaScript ( TronWeb ), Python (tronpy), PHP (iexbase/tron-api) ve cURL dillerinde kopyala-yapıştır örnekleri içermektedir. Tron mesajını imzalayabilen ve HTTP çağrısı yapabilen herhangi bir dil entegre edilebilir; Go, Rust, Java ve C# uygulamalarının tümü bu API üzerinden üretime sunulmuştur.
Telegram WhatsApp