Menguji pembayaran USDT sebelum mainnet: apa yang diubah Nile dan apa yang disimulasikan sandbox
Integrasi pembayaran sebaiknya bertemu kegagalan pertamanya di tempat yang lebih murah daripada mainnet, dan di TRON ada dua tempat seperti itu. Nile adalah testnet publik: rantai sungguhan tempat transaksi ditandatangani dan mendarat di blok, berjalan pada parameternya sendiri. Sandbox seperti milik kami menyalin API di atas rantai simulasi, yang melepaskan jaringan sungguhan dan memperoleh hasil yang tidak akan dihasilkan jaringan sungguhan atas permintaan. Kami membaca parameter rantai mainnet dan Nile pada 3 September 2026 dan menandatangani transaksi di Nile keesokan harinya.
Apa yang sama antara Nile dan mainnet
Nile menjawab panggilan getchainparameters yang sama dengan mainnet, dan parameter yang menetapkan harga transfer kembali identik. Energi berbiaya 100 sun per unit di kedua jaringan, jadi transfer yang kekurangan energi membakar TRX pada tarif yang sama di masing-masing. Bandwidth gratis, biaya membuat akun, biaya memo, dan ketiga parameter energi dinamis juga sama.
| Parameter rantai, dibaca 3 September 2026 | Mainnet | Nile |
|---|---|---|
Biaya energi dalam sun per unit, getEnergyFee | 100 | 100 |
Bandwidth gratis per akun, getFreeNetLimit | 600 | 600 |
Biaya pembuatan akun dalam sun, getCreateAccountFee | 100,000 | 100,000 |
Biaya memo dalam sun, getMemoFee | 1,000,000 | 1,000,000 |
Ambang energi dinamis, getDynamicEnergyThreshold | 5,000,000,000 | 5,000,000,000 |
Faktor kenaikan energi dinamis, getDynamicEnergyIncreaseFactor | 2,000 | 2,000 |
Faktor maksimum energi dinamis, getDynamicEnergyMaxFactor | 34,000 | 34,000 |
Tenggang unstake dalam hari, getUnfreezeDelayDays | 14 | 1 |
Kuncian delegasi terpanjang dalam blok, getMaxDelegateLockPeriod | 864,000 | 144,000 |
Interval pemeliharaan, getMaintenanceTimeInterval | 21,600,000 | 1,800,000 |
Plafon waktu CPU satu transaksi, getMaxCpuTimeOfOneTx | 80 | 160 |
Apa yang diubah Nile
Bagi siapa pun yang menangani energi, perbedaan pertama adalah unstake: di Nile butuh satu hari dibanding empat belas di mainnet, jadi tes yang membekukan TRX lalu menariknya selesai tiga belas hari lebih cepat daripada urutan yang sama di produksi. Kuncian terpanjang yang bisa dibawa sebuah delegasi adalah 144,000 blok di Nile, lima hari pada tiga detik per blok, dibanding 864,000 blok, tiga puluh hari, di mainnet. Kuncian yang lebih panjang dari lima hari sama sekali tidak bisa digladi di Nile; apa yang ditolak sebuah kuncian sama di kedua jaringan.
Delapan dari parameter yang dikembalikan mainnet membawa nilai yang berbeda di Nile. Selain kedua itu, mereka adalah interval pemeliharaan, plafon CPU di tabel, dan empat yang mengatur produsen blok, proposal, dan fitur kontrak. Kami belum menelusuri satu pun dari keenam itu ke dalam alur pembayaran.
Staking juga menghasilkan jumlah energi yang berbeda, karena setiap jaringan membagi batas energi yang sama di antara total stake-nya sendiri, dan stake Nile jauh lebih kecil. Pada kedua putaran kami di Nile pada 4 September, stake yang kami delegasikan muncul di akun penerima sebagai 7,376 unit energi. Stake yang sama di mainnet, pada total yang dibaca sehari sebelumnya, menjadi 958 unit, jadi Nile membagikan hampir delapan kali lipat. Stake yang diukur dari Nile akan membuat dompet mainnet kekurangan.
| Energi dari staking | Mainnet, 3 September 2026 | Nile, 4 September 2026 |
|---|---|---|
Batas energi seluruh jaringan, TotalEnergyLimit | 180,000,000,000 | 180,000,000,000 |
Total stake untuk energi, TotalEnergyWeight | 18,770,236,993 | 2,440,088,105 |
| Energi pada penerima delegasi dari 100 TRX yang didelegasikan | 958 unit, dihitung | 7,376 unit, terukur |
USDT uji adalah kontrak yang berbeda
Kode pembayaran membawa alamat kontrak USDT yang dipanggilnya. Pada 27 Oktober 2026 kami meminta sebuah node Nile untuk kontrak di alamat USDT mainnet, TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t, dan jawabannya objek kosong, {}: tidak ada kontrak di alamat itu di testnet. Token uji di Nile berasal dari kontrak lain di alamat lain, jadi alamat kontrak berada di konfigurasi di samping URL node, dan build yang menanamnya langsung di kode akan memanggil alamat yang salah di salah satu dari kedua jaringan.
Kami belum mengukur berapa energi yang dibutuhkan satu transfer token uji Nile. Nile mengenakan biaya per unit yang sama, tetapi tokennya kontrak lain, jadi tidak ada di Nile yang mengonfirmasi angka mainnet sekitar 65,000 unit ke pemegang dan sekitar 131,000 unit ke alamat tanpa USDT. TRX uji berasal dari faucet, dan faucet menjatahnya: yang kami pakai pada September mengizinkan satu permintaan per dompet dan per IP setiap 24 jam.
Transaksi yang ditandatangani juga tetap berada di jaringan yang untuknya ia dibangun. Setiap transaksi TRON membawa referensi ke blok terbaru dari rantainya sendiri, dan API kami memeriksa referensi itu terhadap mainnet sebelum membeli energi apa pun. Transaksi mode B yang dibangun terhadap Nile ditolak dengan 400 dan details.reason diisi ref_block_unknown. Ketika rantai tidak menjawab pemeriksaan kami, pesanan diterima tanpa diperiksa dan penolakan node setelah pengiriman energi ditagih, jadi bangun setiap transaksi terhadap blok mainnet terkini sebelum Anda mengirimnya.
Apa yang disimulasikan sandbox
Sandbox kami menjawab di https://sandbox.nrg.market/v1 dan menjalankan kode yang sama dengan produksi di atas uang uji, rantai simulasi, dan pemasok energi simulasi. Kunci di sana diawali nrg_test_ dan berasal dari dashboard sandbox, tempat pendaftaran dilakukan mandiri. Kedua lingkungan tidak berbagi apa pun: database, saldo, webhook, dan rahasia yang terpisah. Ketika integrasi berjalan di sana, Anda mengganti URL dasar dan kuncinya; alur API-nya sama di keduanya.
Uang uji tiba tanpa faucet. Mengonfirmasi email mengkreditkan saldo awal, dan POST /v1/sandbox/deposit mengkreditkan lebih banyak lewat jalur yang sama dengan deposit sungguhan: baris deposit di buku besar dengan txid yang diawali sandbox-, dan webhook deposit.credited yang sungguhan. Di produksi jalur itu tidak ada dan dijawab 404.
| Uang uji di sandbox | Menurut kontrak API |
|---|---|
| Saat mengonfirmasi email, atau masuk pertama dengan Google | 10000 TRX |
Satu panggilan POST /v1/sandbox/deposit | hingga 100000 TRX |
| Panggilan deposit per klien per hari UTC | 10 |
Testnet tidak akan menghasilkan hasil tertentu atas permintaan. Sandbox mengaitkan beberapa alamat dengan perilaku tetap, seperti cara nomor kartu uji bekerja: alamat TRON valid tanpa kunci privat di baliknya. Penerima menentukan jenis energi dan apa yang terjadi setelah ready; pengirim menentukan bagaimana pembelian dan delegasi berjalan.
| Alamat | Peran | Apa yang dilakukan sandbox |
|---|---|---|
TLLmUhBYgU125KkPpeTdP1vz1zqhoZwn9v | Penerima | Tidak memegang USDT, jadi kind: double. Ia juga belum diaktifkan, dan tetap kosong sebanyak apa pun transfer yang mendarat padanya. |
TDUvBqzR3cYY6zYopYdJ9jWrxQRs9QmvQM | Penerima | Tidak ada transfer yang pernah muncul. Item menunggu di ready, menjadi expired pada send_before dan ditagih, seperti di produksi. |
TKLeQhXSUba1GG1wdznyMc49oqModZ8Fbm | Penerima | Ada di blacklist USDT: pesanan ditolak dengan 422 blacklisted_recipient. |
TQ6ey8qT87bnzBJXj7gVTGCkrU4wUJ1EWQ | Pengirim | Pembelian gagal di setiap pemasok. Item berakhir failed dengan purchase_failed, dan cadangannya dilepas. |
TYWZsWdM9u8QKJTi6XEmenpvCPwg1xmPCC | Pengirim | Pemasok pertama tidak tersedia dan failover berhasil. Tidak ada di jawaban yang mengatakannya. |
TNhq25t5XTEuk3mC9cTcAGB5rr3xuCkGyr | Pengirim | Delegasi terkonfirmasi setelah sekitar 25 detik, untuk kode yang harus menunggu. |
| Alamat valid lainnya mana pun | Keduanya | Penerima yang memegang USDT, dan delegasi yang terkonfirmasi dalam 2 sampai 8 detik. |
Kedua sisi bergabung, jadi pesanan massal yang mencampur pengirim yang gagal dengan yang biasa berakhir partially_completed tanpa meminta sesuatu yang khusus (apa arti status itu bagi faktur). Pengirim skenario dipakai bersama oleh setiap klien di lingkungan itu, jadi ketika waktu adalah hal yang diuji, pakailah alamat pengirim baru milik Anda sendiri: ia mendapat 2 sampai 8 detik yang biasa, dan delegasinya bersifat pribadi baginya.
Harga di lingkungan itu adalah harga langsung. Tarif sandbox mengikuti produksi tertinggal sekitar dua menit, tiga menit paling lambat, jadi estimasi yang digladi di sana mengembalikan harga yang dikutip produksi dua atau tiga menit sebelumnya. Mode B tidak membutuhkan kunci sungguhan: rantai simulasi tidak memeriksa tanda tangan, jadi transaksi yang ditandatangani kunci sekali pakai mana pun diurai seperti produksi mengurainya dan berjalan melalui broadcasting, broadcasted, dan confirmed, dengan siaran terkonfirmasi dalam sekitar tiga detik.
Apa yang hanya diperlihatkan mainnet
Sandbox tidak bisa membuktikan bagian yang dikerjakan rantai: energi tidak pernah benar-benar tiba di mana pun di dalamnya, dan delegasi yang terkonfirmasi di sana adalah fakta tentang simulator kami. Nile juga tidak bisa menyelesaikannya untuk layanan kami, karena kami tidak menjual energi di testnet mana pun. Anda mengetahui di produksi apakah energi sungguhan mendarat di dompet sungguhan, dan apakah transfer lalu berjalan tanpa membakar TRX.
Beberapa cabang tidak bisa dihasilkan di kedua lingkungan oleh permintaan apa pun: 503 capacity_unavailable, dan error item broadcast_failed, transaction_reverted, dan broadcast_window_missed. Masing-masing bergantung pada pasokan energi, pada rantai, atau pada layanan yang dijeda oleh kami. Tulislah penanganannya dari kontrak dan isi webhook, dan tinjau sebagai kode yang belum pernah berjalan.
Sebagian besar produksi tidak berbiaya untuk dicoba. POST /v1/estimate menerima hingga 500 penerima dan mengembalikan kind, energy_units, dan warnings yang sama dengan yang akan dihitung sebuah pesanan, dan POST /v1/webhooks/{webhook_id}/test mengirim ke penerima webhook Anda sebuah pengiriman bertanda tangan yang sungguhan. POST /v1/orders berbiaya TRX sungguhan di setiap mode, yang menjadikan pesanan langsung pertama dengan satu transfer sebagai gladi terakhir dan satu-satunya yang menunjukkan energi mendarat.
Setiap alamat skenario dalam tulisan ini menjawab di lingkungan itu, di atas uang uji dan kunci nrg_test_ Anda sendiri: buka dashboard sandbox dan terbitkan satu →