Plugin WordPress
Panduan lengkap plugin WordPress TransX402 — pasang paywall IDRX di situs WordPress tanpa coding.
Ringkasan
Plugin TransX402 untuk WordPress memungkinkan pemilik situs memonetisasi konten dengan pembayaran mikro IDRX — tanpa perlu menulis kode. Cukup pasang plugin, masukkan API key, tentukan harga dalam IDR, dan aktifkan paywall pada post atau page yang diinginkan.
Plugin ini merupakan yang pertama di ekosistem x402 — belum ada plugin WordPress x402 lain yang tersedia.
Persyaratan
- WordPress 6.0+
- PHP 8.0+
- Akun TransX402 dengan API key (daftar di dashboard.transx402.com)
Instalasi
Dari WordPress Admin
- Buka Plugins > Add New di admin WordPress
- Cari "TransX402 Paywall"
- Klik Install lalu Activate
Upload Manual
- Download file ZIP plugin dari GitHub releases
- Buka Plugins > Add New > Upload Plugin
- Pilih file ZIP dan klik Install Now
- Aktifkan plugin
Konfigurasi
Settings Utama
Buka Settings > TransX402 di admin WordPress:
| Setting | Deskripsi |
|---|---|
| API Key | API key TransX402 (ipk_sandbox_... atau ipk_live_...) |
| Default Price (IDR) | Harga default untuk konten yang di-paywall (contoh: 5000) |
| Preview Length | Paragraf pertama / 200 kata pertama / Excerpt custom |
| Paywall Style | Overlay / Inline / Blur |
| Custom Message | Pesan kustom pada paywall |
| Enable for | Post / Page / Custom post types |
Catatan: Alamat wallet, jaringan, dan URL fasilitator dikonfigurasi di dashboard TransX402 — plugin hanya membutuhkan API key. Ini menjaga setup WordPress tetap minimal.
Konfigurasi per Post/Page
Di sidebar editor post/page, Anda akan melihat metabox TransX402:
| Setting | Deskripsi |
|---|---|
| Enable Paywall | Toggle untuk mengaktifkan paywall pada konten ini |
| Price (IDR) | Override harga default (opsional) |
| Preview Content | Teks preview kustom (opsional) |
Cara Kerja
Untuk Pengunjung (Frontend)
- Pengunjung membuka artikel yang di-paywall
- Melihat preview artikel (paragraf pertama atau excerpt) beserta overlay paywall
- Klik "Pay with IDRX"
- Hubungkan wallet (MetaMask, Coinbase Wallet, dll.)
- Pertama kali saja: setujui Permit2 untuk IDRX (satu kali, dijelaskan dengan jelas)
- Tanda tangani otorisasi pembayaran (gasless, tidak perlu ETH)
- Artikel terbuka langsung
- Kunjungan ulang ke artikel yang sama gratis (pembayaran diingat di localStorage dan diverifikasi on-chain)
Gating Konten
Plugin menggunakan filter the_content WordPress:
Ini berarti konten premium Anda aman — tidak bisa diakses dengan mematikan JavaScript atau melihat source HTML.
Gaya Paywall
Overlay (Default)
Konten di-blur di belakang kartu pembayaran yang terpusat. Ini adalah pilihan paling populer.
Inline
Kartu paywall muncul secara inline setelah konten preview. Cocok untuk layout yang membutuhkan tampilan yang lebih menyatu dengan konten.
Blur
Seluruh konten terlihat tetapi di-blur, dengan tombol pembayaran mengambang. Memberikan kesan "teaser" yang kuat.
REST API WordPress
Plugin mendaftarkan beberapa endpoint REST API WordPress:
GET /wp-json/transx402/v1/content/:postId
Mengembalikan konten lengkap post setelah verifikasi pembayaran.
Header yang diperlukan:
Alur verifikasi:
- Cek hash transaksi terhadap API TransX402 (
/verify/:txHash) - Verifikasi penerima pembayaran cocok dengan wallet merchant
- Verifikasi jumlah pembayaran cocok dengan harga post
- Kembalikan konten lengkap
GET /wp-json/transx402/v1/config
Mengembalikan konfigurasi TransX402 untuk library JS:
GET /wp-json/transx402/v1/post/:postId/requirements
Mengembalikan persyaratan pembayaran untuk post tertentu (format x402):
Verifikasi Pembayaran dan Akses
Setelah pembayaran, akses pembaca disimpan di dua tempat:
- Browser localStorage —
transx402_paid_{postId}= hash transaksi (instan, tanpa round-trip server saat kunjungan ulang) - Verifikasi server-side — Saat mengambil konten, hash transaksi diverifikasi terhadap blockchain/API fasilitator
Artinya:
- Kunjungan ulang berjalan instan (cek localStorage)
- Membersihkan data browser memerlukan re-verifikasi (tetapi pembayaran masih tercatat on-chain, sehingga alur "restore purchases" dimungkinkan)
- Perangkat berbeda memerlukan wallet yang sama untuk menandatangani pesan verifikasi gratis
Kompatibilitas
| Komponen | Dukungan |
|---|---|
| WordPress | 6.0+ |
| PHP | 8.0+ |
| Editor | Gutenberg, Classic Editor |
| Tema | Astra, GeneratePress, OceanWP, dan tema populer lainnya |
| WooCommerce | Tidak diperlukan, tetapi kompatibel |
| Plugin caching | WP Super Cache, W3 Total Cache (paywall overlay di-render JS, konten diambil via API) |
| SEO | Konten preview dapat diindeks mesin pencari. Konten lengkap di balik API call. |
Testing dengan Sandbox
- Masukkan API key sandbox (
ipk_sandbox_...) di settings plugin - Plugin otomatis terhubung ke environment sandbox
- Lakukan pembayaran test menggunakan IDRX test (gratis)
- Setelah puas, ganti ke API key production (
ipk_live_...)
Tidak perlu mengubah konfigurasi lain — cukup ganti API key.
Keamanan
- Konten lengkap tidak pernah ada di HTML awal — diambil via REST API setelah verifikasi pembayaran
- Verifikasi pembayaran terjadi di server-side (PHP memanggil API fasilitator)
- Validasi alamat wallet pada saat menyimpan settings admin
- Proteksi nonce pada form admin
- Endpoint REST API menggunakan WordPress nonce + verifikasi pembayaran
- Tidak ada data sensitif yang disimpan di database WordPress (tanpa private key, tanpa tanda tangan pembayaran)