Repositori ini berisi dua smart contract utama untuk simulasi sistem reservasi layanan pariwisata berbasis blockchain.
Seluruh kontrak ditulis dalam bahasa Solidity v0.8.x dan diuji pada jaringan Ethereum Sepolia Testnet.
Kontrak ini dikembangkan sebagai backend untuk berbagai eksperimen desentralisasi dalam sektor pariwisata digital.
-
SmartTourismToken.sol
Kontrak ERC-20 standar untuk tokenSTT(Smart Tourism Token).
Token ini digunakan sebagai media transaksi dalam sistem reservasi. -
SmartReservation.sol
Kontrak untuk mencatat data reservasi wisata secara on-chain.
Mendukung fungsi pemesanan dan pelacakan histori reservasi per wallet address.
- Bahasa: Solidity v0.8.x
- Testnet: Ethereum Sepolia
- Tools: Remix IDE, MetaMask, OpenZeppelin
- Opsional: Hardhat & Ganache untuk pengujian lanjutan
- Implementasi ERC-20 menggunakan library OpenZeppelin
- Penamaan token:
Smart Tourism Token (STT) - Fungsi dasar: transfer, approve, mint, dsb.
recordBooking(nama, tanggal)untuk mencatat reservasi barugetMyBookings()untuk melihat seluruh histori reservasi pengguna- Data disimpan dalam array
Booking[]berdasarkan walletmsg.sender - Terintegrasi dengan token
STTsebagai prasyarat transaksi
Eksperimen pencatatan reservasi digital tanpa database terpusat
Otomatisasi transaksi wisata berbasis token
Edukasi dan simulasi blockchain tourism untuk keperluan riset dan pengajaran
Kontrak ini hanya digunakan pada jaringan testnet (Sepolia).
Belum direkomendasikan untuk penggunaan komersial.
Lisensi: MIT License
Akhmad Khudri (@ELPEEF) Proyek ini merupakan bagian dari riset disertasi dan pengembangan sistem digital pariwisata berbasis blockchain.
struct Booking {
string nama;
string tanggal;
}
mapping(address => Booking[]) public bookings;
function recordBooking(string memory nama, string memory tanggal) public {
bookings[msg.sender].push(Booking(nama, tanggal));
}
function getMyBookings() public view returns (Booking[] memory) {
return bookings[msg.sender];
}