update terms and privacy

This commit is contained in:
2026-06-02 13:52:40 +07:00
parent 88353d5d06
commit 754111b359
5 changed files with 286 additions and 146 deletions
+4 -1
View File
@@ -11,7 +11,10 @@
"PowerShell(npx tsc --noEmit 2>&1)", "PowerShell(npx tsc --noEmit 2>&1)",
"PowerShell(npx eslint server/services/refund.service.ts server/repositories/refund.repo.ts features/refund app/admin/refunds 2>&1)", "PowerShell(npx eslint server/services/refund.service.ts server/repositories/refund.repo.ts features/refund app/admin/refunds 2>&1)",
"PowerShell(npx eslint server lib features app 2>&1)", "PowerShell(npx eslint server lib features app 2>&1)",
"Bash(npx eslint *)" "Bash(npx eslint *)",
"Bash(Get-ChildItem -Path \"D:\\\\development\\\\weekly-project\\\\setrip\" -Recurse -Directory -Depth 2)",
"Bash(Select-Object FullName)",
"Bash(Get-Content -Path \"D:\\\\development\\\\weekly-project\\\\setrip\\\\.env.example\" -ErrorAction SilentlyContinue)"
] ]
} }
} }
+65 -60
View File
@@ -1,6 +1,6 @@
# 🔒 Privacy Policy (Kebijakan Privasi) SeTrip # 🔒 Privacy Policy (Kebijakan Privasi) SeTrip
**Terakhir diperbarui: 2026-04-27** **Terakhir diperbarui: 2026-06-02**
SeTrip menghargai privasi Anda. Kebijakan Privasi ini menjelaskan bagaimana kami mengumpulkan, menggunakan, dan melindungi informasi Anda saat menggunakan platform SeTrip. SeTrip menghargai privasi Anda. Kebijakan Privasi ini menjelaskan bagaimana kami mengumpulkan, menggunakan, dan melindungi informasi Anda saat menggunakan platform SeTrip.
@@ -10,62 +10,83 @@ Dengan menggunakan SeTrip, Anda menyetujui praktik yang dijelaskan dalam Kebijak
# 1. Informasi yang Kami Kumpulkan # 1. Informasi yang Kami Kumpulkan
Kami dapat mengumpulkan informasi berikut:
## a. Informasi Akun ## a. Informasi Akun
- Nama - Nama
- Email - Email
- Nomor telepon - Password (disimpan dalam bentuk hash bcrypt, tidak pernah dalam teks asli)
- Password (disimpan dalam bentuk terenkripsi)
## b. Informasi Profil Anda dapat mendaftar menggunakan email & password atau melalui akun Google. Jika Anda masuk dengan Google, kami menerima nama, email, foto profil, dan token akun dari Google; tidak ada password yang dibuat untuk akun tersebut.
## b. Informasi Profil (Publik)
Informasi yang Anda pilih untuk dibagikan dan ditampilkan ke pengguna lain untuk penemuan teman dan pencocokan trip:
- Foto profil - Foto profil
- Deskripsi diri - Bio / deskripsi diri
- Riwayat trip - Kota domisili
- Minat/aktivitas favorit (interests)
- Username Instagram (opsional)
- Gaya perjalanan / vibe (chill, balanced, hardcore)
- Riwayat trip yang diikuti
## c. Informasi Transaksi ## c. Verifikasi Identitas Organizer (KYC)
- Data booking trip Khusus bagi pengguna yang ingin menjadi organizer:
- Status pembayaran
- Riwayat aktivitas
## d. Informasi Teknis - Nama lengkap sesuai KTP
- Nomor Induk Kependudukan (NIK)
- Tanggal lahir dan alamat
- Foto KTP
- Foto liveness (memegang kertas bertuliskan "SETRIP")
- Data rekening bank (nama bank, nomor rekening, nama pemilik) untuk pencairan dana
NIK serta foto KTP dan liveness disimpan dalam bentuk terenkripsi (AES-256-GCM) pada penyimpanan privat di luar akses publik. NIK juga di-hash (HMAC) sehingga kami dapat memeriksa keunikannya tanpa membuka data aslinya.
## d. Informasi Transaksi & Pembayaran
- Data booking trip dan nominal pembayaran
- Status pembayaran dan metode pembayaran (mis. virtual account, GoPay, QRIS, transfer manual)
- ID transaksi dan catatan callback dari penyedia pembayaran (Midtrans)
- Riwayat refund dan pencairan dana (payout), termasuk data rekening tujuan
Pembayaran kartu/e-wallet diproses langsung oleh penyedia pembayaran Midtrans. Kami tidak menyimpan nomor kartu, PIN, atau kredensial pembayaran Anda.
## e. Informasi Teknis
- Alamat IP - Alamat IP
- Browser - Browser
- Perangkat yang digunakan - Perangkat yang digunakan
- Log aktivitas - Log aktivitas dan sistem (termasuk log pengiriman email dan log tindakan admin)
--- ---
# 2. Cara Kami Menggunakan Informasi # 2. Cara Kami Menggunakan Informasi
Kami menggunakan informasi Anda untuk:
- Membuat dan mengelola akun - Membuat dan mengelola akun
- Menghubungkan pengguna dengan organizer - Menghubungkan pengguna dengan organizer serta mencocokkan teman/trip berdasarkan minat dan vibe
- Memproses booking dan aktivitas trip - Memproses booking, pembayaran, escrow, refund, dan pencairan dana
- Memverifikasi identitas organizer (KYC)
- Mengirim email dan notifikasi terkait aktivitas akun dan transaksi
- Meningkatkan layanan dan pengalaman pengguna - Meningkatkan layanan dan pengalaman pengguna
- Mengirim notifikasi terkait aktivitas
- Mencegah penipuan dan penyalahgunaan - Mencegah penipuan dan penyalahgunaan
--- ---
# 3. Pembagian Informasi # 3. Pembagian Informasi
Kami tidak menjual data pribadi Anda. Kami tidak menjual data pribadi Anda. Namun, kami dapat membagikan informasi dalam kondisi berikut:
Namun, kami dapat membagikan informasi dalam kondisi berikut: ## a. Dengan Organizer & Peserta Lain
## a. Dengan Organizer - Profil publik Anda dan informasi dasar (seperti nama) dapat dibagikan kepada organizer dan peserta lain untuk keperluan trip
- Informasi dasar seperti nama dan kontak dapat dibagikan kepada organizer untuk keperluan trip ## b. Dengan Penyedia Layanan Pihak Ketiga
## b. Dengan Penyedia Layanan - Midtrans — untuk memproses pembayaran
- Resend — untuk mengirim email transaksional
- Untuk kebutuhan teknis (hosting, analytics, dll) - Google — saat Anda memilih masuk dengan akun Google
- Penyedia hosting dan basis data — untuk menjalankan layanan
## c. Kewajiban Hukum ## c. Kewajiban Hukum
@@ -75,82 +96,66 @@ Namun, kami dapat membagikan informasi dalam kondisi berikut:
# 4. Keamanan Data # 4. Keamanan Data
Kami berusaha melindungi data Anda dengan: - Hash password (bcrypt)
- Enkripsi data KYC sensitif (AES-256-GCM) di penyimpanan privat
- Enkripsi password - Pembatasan akses data dan pencatatan tindakan admin (audit log)
- Pembatasan akses data - Verifikasi tanda tangan (signature) pada callback pembayaran
- Sistem keamanan standar industri - Sistem keamanan standar industri
Namun, tidak ada sistem yang 100% aman. Namun, tidak ada sistem yang 100% aman.
--- ---
# 5. Penyimpanan Data # 5. Penyimpanan & Retensi Data
Kami menyimpan data Anda selama: Kami menyimpan data Anda selama akun aktif dan selama dibutuhkan untuk keperluan layanan.
- Akun Anda aktif Data dapat dihapus atas permintaan pengguna. Namun, catatan keuangan dan audit (pembayaran, refund, pencairan dana, log email, dan log tindakan admin) bersifat permanen (append-only) dan dapat tetap disimpan meskipun akun dihapus, sepanjang diwajibkan untuk kepatuhan hukum, akuntansi, dan penyelesaian sengketa. Data KYC disimpan selama dibutuhkan untuk verifikasi dan kewajiban hukum.
- Dibutuhkan untuk keperluan layanan
Data dapat dihapus atas permintaan pengguna, kecuali diwajibkan oleh hukum untuk disimpan.
--- ---
# 6. Hak Pengguna # 6. Hak Pengguna
Anda memiliki hak untuk:
- Mengakses data pribadi Anda - Mengakses data pribadi Anda
- Memperbarui informasi - Memperbarui informasi
- Menghapus akun - Menghapus akun
- Menarik persetujuan - Menarik persetujuan
Penghapusan akun tidak menghapus catatan keuangan dan audit yang wajib kami simpan sebagaimana dijelaskan pada bagian 5.
--- ---
# 7. Cookie & Tracking # 7. Cookie & Tracking
SeTrip dapat menggunakan: SeTrip hanya menggunakan cookie sesi (JWT) untuk menjaga Anda tetap login. Kami **tidak** menggunakan cookie iklan maupun layanan analitik/pelacakan pihak ketiga.
- Cookie
- Teknologi pelacakan sederhana
Untuk:
- Menyimpan sesi login
- Meningkatkan pengalaman pengguna
--- ---
# 8. Layanan Pihak Ketiga # 8. Layanan Pihak Ketiga
SeTrip dapat menggunakan layanan pihak ketiga seperti: SeTrip menggunakan layanan pihak ketiga berikut:
- Hosting - Google — autentikasi (login dengan Google)
- Analytics - Midtrans — payment gateway
- Payment gateway (di masa depan) - Resend — pengiriman email
- Penyedia hosting dan basis data
Kami tidak bertanggung jawab atas kebijakan privasi pihak ketiga tersebut. Kami tidak bertanggung jawab atas kebijakan privasi pihak ketiga tersebut. Silakan tinjau kebijakan privasi masing-masing penyedia.
--- ---
# 9. Perlindungan terhadap Penipuan # 9. Perlindungan terhadap Penipuan
Kami dapat menggunakan data untuk:
- Mendeteksi aktivitas mencurigakan - Mendeteksi aktivitas mencurigakan
- Mencegah penipuan - Mencegah penipuan
- Menangguhkan akun yang melanggar
- Melindungi pengguna lain - Melindungi pengguna lain
--- ---
# 10. Perubahan Kebijakan Privasi # 10. Perubahan Kebijakan Privasi
SeTrip dapat memperbarui Kebijakan Privasi ini sewaktu-waktu. SeTrip dapat memperbarui Kebijakan Privasi ini sewaktu-waktu. Pengguna disarankan untuk membaca secara berkala dan memahami perubahan yang berlaku.
Pengguna disarankan untuk:
- Membaca secara berkala
- Memahami perubahan yang berlaku
--- ---
+28 -17
View File
@@ -1,6 +1,6 @@
# 📜 Terms & Conditions (Syarat & Ketentuan) SeTrip # 📜 Terms & Conditions (Syarat & Ketentuan) SeTrip
**Terakhir diperbarui: 2026-04-27** **Terakhir diperbarui: 2026-06-02**
Selamat datang di SeTrip. Dengan mengakses atau menggunakan platform SeTrip, Anda menyetujui untuk terikat oleh Syarat & Ketentuan berikut. Selamat datang di SeTrip. Dengan mengakses atau menggunakan platform SeTrip, Anda menyetujui untuk terikat oleh Syarat & Ketentuan berikut.
@@ -12,15 +12,16 @@ Dalam dokumen ini:
- **SeTrip**: Platform yang menghubungkan pengguna dengan penyelenggara trip. - **SeTrip**: Platform yang menghubungkan pengguna dengan penyelenggara trip.
- **Pengguna (User)**: Individu yang menggunakan aplikasi SeTrip. - **Pengguna (User)**: Individu yang menggunakan aplikasi SeTrip.
- **Organizer (Penyelenggara)**: Pengguna yang membuat dan mengelola trip. - **Organizer (Penyelenggara)**: Pengguna terverifikasi yang membuat dan mengelola trip.
- **Trip**: Kegiatan perjalanan yang dibuat oleh organizer. - **Trip**: Kegiatan perjalanan yang dibuat oleh organizer.
- **Escrow**: Penahanan dana peserta oleh SeTrip sampai trip selesai sebelum diteruskan ke organizer.
- **Platform**: Website atau aplikasi SeTrip. - **Platform**: Website atau aplikasi SeTrip.
--- ---
# 2. Peran SeTrip # 2. Peran SeTrip
SeTrip bertindak sebagai **platform perantara** yang menghubungkan pengguna dan organizer. SeTrip bertindak sebagai **platform perantara** yang menghubungkan pengguna dan organizer serta memfasilitasi pembayaran.
SeTrip: SeTrip:
@@ -51,7 +52,17 @@ Dengan menggunakan SeTrip, Anda menyatakan bahwa:
--- ---
# 5. Trip & Booking # 5. Verifikasi Organizer (KYC)
Untuk dapat membuat dan mengelola trip, pengguna wajib melalui proses verifikasi identitas (KYC):
- Organizer mengunggah data identitas (KTP, NIK, foto liveness) dan informasi rekening bank untuk pencairan dana
- SeTrip meninjau pengajuan secara manual dan berhak menyetujui, menolak, atau meminta dokumen diunggah ulang
- Data verifikasi disimpan secara terenkripsi sesuai Kebijakan Privasi
---
# 6. Trip & Booking
- Organizer bertanggung jawab atas seluruh informasi trip - Organizer bertanggung jawab atas seluruh informasi trip
- Pengguna wajib membaca detail trip sebelum melakukan join - Pengguna wajib membaca detail trip sebelum melakukan join
@@ -59,7 +70,7 @@ Dengan menggunakan SeTrip, Anda menyatakan bahwa:
--- ---
# 6. Pembayaran & Escrow # 7. Pembayaran & Escrow
- Pembayaran dilakukan melalui metode yang tersedia di platform (Midtrans atau transfer manual yang dikonfirmasi organizer) - Pembayaran dilakukan melalui metode yang tersedia di platform (Midtrans atau transfer manual yang dikonfirmasi organizer)
- **Uang peserta ditahan oleh SeTrip (escrow)** sejak pembayaran berhasil hingga trip selesai + 3 hari, baru kemudian diteruskan ke organizer - **Uang peserta ditahan oleh SeTrip (escrow)** sejak pembayaran berhasil hingga trip selesai + 3 hari, baru kemudian diteruskan ke organizer
@@ -68,7 +79,7 @@ Dengan menggunakan SeTrip, Anda menyatakan bahwa:
--- ---
# 7. Pembatalan & Refund # 8. Pembatalan & Refund
**Saat peserta membatalkan booking sendiri** (kebijakan default platform): **Saat peserta membatalkan booking sendiri** (kebijakan default platform):
@@ -84,7 +95,7 @@ Kebijakan di atas berlaku platform-wide; organizer tidak dapat menetapkan policy
--- ---
# 8. Tanggung Jawab Organizer # 9. Tanggung Jawab Organizer
Organizer wajib: Organizer wajib:
@@ -94,7 +105,7 @@ Organizer wajib:
--- ---
# 9. Risiko Perjalanan # 10. Risiko Perjalanan
Pengguna memahami bahwa aktivitas perjalanan, terutama kegiatan outdoor, memiliki risiko termasuk namun tidak terbatas pada: Pengguna memahami bahwa aktivitas perjalanan, terutama kegiatan outdoor, memiliki risiko termasuk namun tidak terbatas pada:
@@ -109,7 +120,7 @@ Dengan mengikuti trip, pengguna menyatakan:
--- ---
# 10. Batasan Tanggung Jawab # 11. Batasan Tanggung Jawab
SeTrip tidak bertanggung jawab atas: SeTrip tidak bertanggung jawab atas:
@@ -120,7 +131,7 @@ SeTrip tidak bertanggung jawab atas:
--- ---
# 11. Larangan Transaksi di Luar Platform # 12. Larangan Transaksi di Luar Platform
Pengguna disarankan untuk tidak melakukan transaksi di luar platform. Pengguna disarankan untuk tidak melakukan transaksi di luar platform.
@@ -132,15 +143,15 @@ SeTrip tidak bertanggung jawab atas:
--- ---
# 12. Sistem Review # 13. Sistem Review
- Pengguna dapat memberikan review setelah trip - Peserta dapat memberikan review setelah trip selesai
- Review harus jujur dan tidak mengandung unsur fitnah - Review harus jujur dan tidak mengandung unsur fitnah
- SeTrip berhak menghapus review yang melanggar - SeTrip berhak menghapus review yang melanggar
--- ---
# 13. Penangguhan & Penghentian Akun # 14. Penangguhan & Penghentian Akun
SeTrip berhak untuk: SeTrip berhak untuk:
@@ -156,7 +167,7 @@ Jika pengguna:
--- ---
# 14. Perubahan Layanan # 15. Perubahan Layanan
SeTrip dapat: SeTrip dapat:
@@ -168,7 +179,7 @@ Tanpa pemberitahuan sebelumnya
--- ---
# 15. Perubahan Syarat & Ketentuan # 16. Perubahan Syarat & Ketentuan
SeTrip dapat memperbarui Syarat & Ketentuan ini kapan saja. SeTrip dapat memperbarui Syarat & Ketentuan ini kapan saja.
@@ -179,13 +190,13 @@ Pengguna disarankan untuk:
--- ---
# 16. Hukum yang Berlaku # 17. Hukum yang Berlaku
Syarat & Ketentuan ini diatur oleh hukum yang berlaku di Republik Indonesia. Syarat & Ketentuan ini diatur oleh hukum yang berlaku di Republik Indonesia.
--- ---
# 17. Kontak # 18. Kontak
Jika Anda memiliki pertanyaan, silakan hubungi: Jika Anda memiliki pertanyaan, silakan hubungi:
+98 -40
View File
@@ -16,7 +16,7 @@ export default function PrivacyPage() {
Kebijakan Privasi SeTrip Kebijakan Privasi SeTrip
</h1> </h1>
<p className="mt-2 text-sm text-neutral-500"> <p className="mt-2 text-sm text-neutral-500">
Terakhir diperbarui: 2026-04-27 Terakhir diperbarui: 2026-06-02
</p> </p>
<p className="mt-4 text-sm leading-relaxed text-neutral-700"> <p className="mt-4 text-sm leading-relaxed text-neutral-700">
SeTrip menghargai privasi Anda. Kebijakan Privasi ini menjelaskan SeTrip menghargai privasi Anda. Kebijakan Privasi ini menjelaskan
@@ -36,30 +36,75 @@ export default function PrivacyPage() {
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Nama</li> <li>Nama</li>
<li>Email</li> <li>Email</li>
<li>Nomor telepon</li> <li>Password (disimpan dalam bentuk hash bcrypt, tidak pernah dalam teks asli)</li>
<li>Password (disimpan dalam bentuk terenkripsi)</li>
</ul> </ul>
<p className="mt-2">
Anda dapat mendaftar menggunakan email &amp; password atau melalui
akun Google. Jika Anda masuk dengan Google, kami menerima nama,
email, foto profil, dan token akun dari Google; tidak ada password
yang dibuat untuk akun tersebut.
</p>
<h3 className="mb-2 mt-4 font-semibold text-neutral-800">b. Informasi Profil</h3> <h3 className="mb-2 mt-4 font-semibold text-neutral-800">
b. Informasi Profil (Publik)
</h3>
<p className="mb-2">
Informasi yang Anda pilih untuk dibagikan dan ditampilkan ke
pengguna lain untuk keperluan penemuan teman dan pencocokan trip:
</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Foto profil</li> <li>Foto profil</li>
<li>Deskripsi diri</li> <li>Bio / deskripsi diri</li>
<li>Riwayat trip</li> <li>Kota domisili</li>
<li>Minat/aktivitas favorit (interests)</li>
<li>Username Instagram (opsional)</li>
<li>Gaya perjalanan / vibe (chill, balanced, hardcore)</li>
<li>Riwayat trip yang diikuti</li>
</ul> </ul>
<h3 className="mb-2 mt-4 font-semibold text-neutral-800">c. Informasi Transaksi</h3> <h3 className="mb-2 mt-4 font-semibold text-neutral-800">
c. Verifikasi Identitas Organizer (KYC)
</h3>
<p className="mb-2">
Khusus bagi pengguna yang ingin menjadi organizer, kami
mengumpulkan data verifikasi identitas:
</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Data booking trip</li> <li>Nama lengkap sesuai KTP</li>
<li>Status pembayaran</li> <li>Nomor Induk Kependudukan (NIK)</li>
<li>Riwayat aktivitas</li> <li>Tanggal lahir dan alamat</li>
<li>Foto KTP</li>
<li>Foto liveness (memegang kertas bertuliskan &ldquo;SETRIP&rdquo;)</li>
<li>Data rekening bank (nama bank, nomor rekening, nama pemilik) untuk pencairan dana</li>
</ul> </ul>
<p className="mt-2">
NIK serta foto KTP dan liveness disimpan dalam bentuk terenkripsi
(AES-256-GCM) pada penyimpanan privat di luar akses publik. NIK
juga di-hash (HMAC) sehingga kami dapat memeriksa keunikannya tanpa
membuka data aslinya.
</p>
<h3 className="mb-2 mt-4 font-semibold text-neutral-800">d. Informasi Teknis</h3> <h3 className="mb-2 mt-4 font-semibold text-neutral-800">
d. Informasi Transaksi &amp; Pembayaran
</h3>
<ul className="ml-5 list-disc space-y-1.5">
<li>Data booking trip dan nominal pembayaran</li>
<li>Status pembayaran dan metode pembayaran (mis. virtual account, GoPay, QRIS, transfer manual)</li>
<li>ID transaksi dan catatan callback dari penyedia pembayaran (Midtrans)</li>
<li>Riwayat refund dan pencairan dana (payout), termasuk data rekening tujuan</li>
</ul>
<p className="mt-2">
Pembayaran kartu/e-wallet diproses langsung oleh penyedia
pembayaran Midtrans. Kami tidak menyimpan nomor kartu, PIN, atau
kredensial pembayaran Anda.
</p>
<h3 className="mb-2 mt-4 font-semibold text-neutral-800">e. Informasi Teknis</h3>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Alamat IP</li> <li>Alamat IP</li>
<li>Browser</li> <li>Browser</li>
<li>Perangkat yang digunakan</li> <li>Perangkat yang digunakan</li>
<li>Log aktivitas</li> <li>Log aktivitas dan sistem (termasuk log pengiriman email dan log tindakan admin)</li>
</ul> </ul>
</section> </section>
@@ -70,10 +115,11 @@ export default function PrivacyPage() {
<p className="mb-3">Kami menggunakan informasi Anda untuk:</p> <p className="mb-3">Kami menggunakan informasi Anda untuk:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Membuat dan mengelola akun</li> <li>Membuat dan mengelola akun</li>
<li>Menghubungkan pengguna dengan organizer</li> <li>Menghubungkan pengguna dengan organizer serta mencocokkan teman/trip berdasarkan minat dan vibe</li>
<li>Memproses booking dan aktivitas trip</li> <li>Memproses booking, pembayaran, escrow, refund, dan pencairan dana</li>
<li>Memverifikasi identitas organizer (KYC)</li>
<li>Mengirim email dan notifikasi terkait aktivitas akun dan transaksi</li>
<li>Meningkatkan layanan dan pengalaman pengguna</li> <li>Meningkatkan layanan dan pengalaman pengguna</li>
<li>Mengirim notifikasi terkait aktivitas</li>
<li>Mencegah penipuan dan penyalahgunaan</li> <li>Mencegah penipuan dan penyalahgunaan</li>
</ul> </ul>
</section> </section>
@@ -85,19 +131,24 @@ export default function PrivacyPage() {
informasi dalam kondisi berikut: informasi dalam kondisi berikut:
</p> </p>
<h3 className="mb-2 mt-4 font-semibold text-neutral-800">a. Dengan Organizer</h3> <h3 className="mb-2 mt-4 font-semibold text-neutral-800">
a. Dengan Organizer &amp; Peserta Lain
</h3>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li> <li>
Informasi dasar seperti nama dan kontak dapat dibagikan kepada Profil publik Anda dan informasi dasar (seperti nama) dapat
organizer untuk keperluan trip dibagikan kepada organizer dan peserta lain untuk keperluan trip
</li> </li>
</ul> </ul>
<h3 className="mb-2 mt-4 font-semibold text-neutral-800"> <h3 className="mb-2 mt-4 font-semibold text-neutral-800">
b. Dengan Penyedia Layanan b. Dengan Penyedia Layanan Pihak Ketiga
</h3> </h3>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Untuk kebutuhan teknis (hosting, analytics, dll)</li> <li>Midtrans untuk memproses pembayaran</li>
<li>Resend untuk mengirim email transaksional</li>
<li>Google saat Anda memilih masuk dengan akun Google</li>
<li>Penyedia hosting dan basis data untuk menjalankan layanan</li>
</ul> </ul>
<h3 className="mb-2 mt-4 font-semibold text-neutral-800">c. Kewajiban Hukum</h3> <h3 className="mb-2 mt-4 font-semibold text-neutral-800">c. Kewajiban Hukum</h3>
@@ -110,23 +161,29 @@ export default function PrivacyPage() {
<h2 className="mb-3 text-lg font-bold text-neutral-900">4. Keamanan Data</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">4. Keamanan Data</h2>
<p className="mb-3">Kami berusaha melindungi data Anda dengan:</p> <p className="mb-3">Kami berusaha melindungi data Anda dengan:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Enkripsi password</li> <li>Hash password (bcrypt)</li>
<li>Pembatasan akses data</li> <li>Enkripsi data KYC sensitif (AES-256-GCM) di penyimpanan privat</li>
<li>Pembatasan akses data dan pencatatan tindakan admin (audit log)</li>
<li>Verifikasi tanda tangan (signature) pada callback pembayaran</li>
<li>Sistem keamanan standar industri</li> <li>Sistem keamanan standar industri</li>
</ul> </ul>
<p className="mt-3">Namun, tidak ada sistem yang 100% aman.</p> <p className="mt-3">Namun, tidak ada sistem yang 100% aman.</p>
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">5. Penyimpanan Data</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">5. Penyimpanan &amp; Retensi Data</h2>
<p className="mb-3">Kami menyimpan data Anda selama:</p> <p className="mb-3">Kami menyimpan data Anda selama:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Akun Anda aktif</li> <li>Akun Anda aktif</li>
<li>Dibutuhkan untuk keperluan layanan</li> <li>Dibutuhkan untuk keperluan layanan</li>
</ul> </ul>
<p className="mt-3"> <p className="mt-3">
Data dapat dihapus atas permintaan pengguna, kecuali diwajibkan Data dapat dihapus atas permintaan pengguna. Namun, catatan
oleh hukum untuk disimpan. keuangan dan audit (pembayaran, refund, pencairan dana, log email,
dan log tindakan admin) bersifat permanen (append-only) dan dapat
tetap disimpan meskipun akun dihapus, sepanjang diwajibkan untuk
kepatuhan hukum, akuntansi, dan penyelesaian sengketa. Data KYC
disimpan selama dibutuhkan untuk verifikasi dan kewajiban hukum.
</p> </p>
</section> </section>
@@ -139,35 +196,35 @@ export default function PrivacyPage() {
<li>Menghapus akun</li> <li>Menghapus akun</li>
<li>Menarik persetujuan</li> <li>Menarik persetujuan</li>
</ul> </ul>
<p className="mt-3">
Penghapusan akun tidak menghapus catatan keuangan dan audit yang
wajib kami simpan sebagaimana dijelaskan pada bagian 5.
</p>
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">7. Cookie &amp; Tracking</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">7. Cookie &amp; Tracking</h2>
<p className="mb-3">SeTrip dapat menggunakan:</p> <p className="mb-3">
<ul className="ml-5 list-disc space-y-1.5"> SeTrip hanya menggunakan cookie sesi (JWT) untuk menjaga Anda tetap
<li>Cookie</li> login. Kami <strong>tidak</strong> menggunakan cookie iklan maupun
<li>Teknologi pelacakan sederhana</li> layanan analitik/pelacakan pihak ketiga.
</ul> </p>
<p className="mt-3 mb-2">Untuk:</p>
<ul className="ml-5 list-disc space-y-1.5">
<li>Menyimpan sesi login</li>
<li>Meningkatkan pengalaman pengguna</li>
</ul>
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900"> <h2 className="mb-3 text-lg font-bold text-neutral-900">
8. Layanan Pihak Ketiga 8. Layanan Pihak Ketiga
</h2> </h2>
<p className="mb-3">SeTrip dapat menggunakan layanan pihak ketiga seperti:</p> <p className="mb-3">SeTrip menggunakan layanan pihak ketiga berikut:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Hosting</li> <li>Google autentikasi (login dengan Google)</li>
<li>Analytics</li> <li>Midtrans payment gateway</li>
<li>Payment gateway (di masa depan)</li> <li>Resend pengiriman email</li>
<li>Penyedia hosting dan basis data</li>
</ul> </ul>
<p className="mt-3"> <p className="mt-3">
Kami tidak bertanggung jawab atas kebijakan privasi pihak ketiga Kami tidak bertanggung jawab atas kebijakan privasi pihak ketiga
tersebut. tersebut. Silakan tinjau kebijakan privasi masing-masing penyedia.
</p> </p>
</section> </section>
@@ -179,6 +236,7 @@ export default function PrivacyPage() {
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Mendeteksi aktivitas mencurigakan</li> <li>Mendeteksi aktivitas mencurigakan</li>
<li>Mencegah penipuan</li> <li>Mencegah penipuan</li>
<li>Menangguhkan akun yang melanggar</li>
<li>Melindungi pengguna lain</li> <li>Melindungi pengguna lain</li>
</ul> </ul>
</section> </section>
+91 -28
View File
@@ -16,7 +16,7 @@ export default function TermsPage() {
Syarat &amp; Ketentuan SeTrip Syarat &amp; Ketentuan SeTrip
</h1> </h1>
<p className="mt-2 text-sm text-neutral-500"> <p className="mt-2 text-sm text-neutral-500">
Terakhir diperbarui: 2026-04-27 Terakhir diperbarui: 2026-06-02
</p> </p>
<p className="mt-4 text-sm leading-relaxed text-neutral-700"> <p className="mt-4 text-sm leading-relaxed text-neutral-700">
Selamat datang di SeTrip. Dengan mengakses atau menggunakan platform Selamat datang di SeTrip. Dengan mengakses atau menggunakan platform
@@ -38,13 +38,17 @@ export default function TermsPage() {
aplikasi SeTrip. aplikasi SeTrip.
</li> </li>
<li> <li>
<strong>Organizer (Penyelenggara)</strong>: Pengguna yang membuat <strong>Organizer (Penyelenggara)</strong>: Pengguna terverifikasi
dan mengelola trip. yang membuat dan mengelola trip.
</li> </li>
<li> <li>
<strong>Trip</strong>: Kegiatan perjalanan yang dibuat oleh <strong>Trip</strong>: Kegiatan perjalanan yang dibuat oleh
organizer. organizer.
</li> </li>
<li>
<strong>Escrow</strong>: Penahanan dana peserta oleh SeTrip
sampai trip selesai sebelum diteruskan ke organizer.
</li>
<li> <li>
<strong>Platform</strong>: Website atau aplikasi SeTrip. <strong>Platform</strong>: Website atau aplikasi SeTrip.
</li> </li>
@@ -55,7 +59,8 @@ export default function TermsPage() {
<h2 className="mb-3 text-lg font-bold text-neutral-900">2. Peran SeTrip</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">2. Peran SeTrip</h2>
<p className="mb-3"> <p className="mb-3">
SeTrip bertindak sebagai <strong>platform perantara</strong> yang SeTrip bertindak sebagai <strong>platform perantara</strong> yang
menghubungkan pengguna dan organizer. SeTrip: menghubungkan pengguna dan organizer serta memfasilitasi
pembayaran. SeTrip:
</p> </p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Bukan penyelenggara trip</li> <li>Bukan penyelenggara trip</li>
@@ -94,7 +99,36 @@ export default function TermsPage() {
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">5. Trip &amp; Booking</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">
5. Verifikasi Organizer (KYC)
</h2>
<p className="mb-3">
Untuk dapat membuat dan mengelola trip, pengguna wajib melalui
proses verifikasi identitas (KYC):
</p>
<ul className="ml-5 list-disc space-y-1.5">
<li>
Organizer mengunggah data identitas (KTP, NIK, foto liveness)
dan informasi rekening bank untuk pencairan dana
</li>
<li>
SeTrip meninjau pengajuan secara manual dan berhak menyetujui,
menolak, atau meminta dokumen diunggah ulang
</li>
<li>
Data verifikasi disimpan secara terenkripsi sesuai{" "}
<Link
href="/privacy"
className="font-semibold text-primary-600 hover:text-primary-700"
>
Kebijakan Privasi
</Link>
</li>
</ul>
</section>
<section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">6. Trip &amp; Booking</h2>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Organizer bertanggung jawab atas seluruh informasi trip</li> <li>Organizer bertanggung jawab atas seluruh informasi trip</li>
<li>Pengguna wajib membaca detail trip sebelum melakukan join</li> <li>Pengguna wajib membaca detail trip sebelum melakukan join</li>
@@ -106,40 +140,69 @@ export default function TermsPage() {
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">6. Pembayaran</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">7. Pembayaran &amp; Escrow</h2>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Pembayaran dilakukan sesuai metode yang tersedia di platform</li>
<li> <li>
Dalam fase awal, pembayaran dapat dilakukan langsung kepada Pembayaran dilakukan melalui metode yang tersedia di platform
organizer (Midtrans atau transfer manual yang dikonfirmasi organizer)
</li> </li>
<li> <li>
SeTrip tidak menjamin keamanan transaksi yang dilakukan di luar <strong>Uang peserta ditahan oleh SeTrip (escrow)</strong> sejak
platform pembayaran berhasil hingga trip selesai + 3 hari, baru kemudian
diteruskan ke organizer
</li>
<li>
Buffer 3 hari memberi waktu peserta dan organizer melaporkan
masalah trip sebelum dana dicairkan
</li>
<li>
Pembayaran di luar platform tidak dijamin keamanannya oleh
SeTrip kami tidak dapat memediasi sengketa untuk transaksi
off-platform
</li> </li>
</ul> </ul>
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900"> <h2 className="mb-3 text-lg font-bold text-neutral-900">
7. Pembatalan &amp; Refund 8. Pembatalan &amp; Refund
</h2> </h2>
<p className="mb-2 font-semibold text-neutral-800">
Saat peserta membatalkan booking sendiri (kebijakan default platform):
</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Kebijakan pembatalan ditentukan oleh organizer</li>
<li> <li>
SeTrip tidak bertanggung jawab atas refund yang tidak diberikan <strong> 7 hari</strong> sebelum tanggal berangkat refund{" "}
oleh organizer <strong>80%</strong> dari nominal booking
</li> </li>
<li> <li>
Pengguna disarankan untuk memahami kebijakan sebelum melakukan <strong>36 hari</strong> sebelum tanggal berangkat refund{" "}
pembayaran <strong>50%</strong> dari nominal booking
</li>
<li>
<strong>&lt; 3 hari</strong> sebelum tanggal berangkat / setelah
berangkat <strong>tidak ada refund</strong>
</li> </li>
</ul> </ul>
<p className="mt-3 mb-2 font-semibold text-neutral-800">
Saat organizer membatalkan trip:
</p>
<ul className="ml-5 list-disc space-y-1.5">
<li>Peserta yang sudah membayar mendapat refund <strong>100%</strong></li>
</ul>
<p className="mt-3">
Pengembalian dana diproses manual oleh admin SeTrip perlu 13
hari kerja sejak refund disetujui untuk uang masuk ke rekening
Anda. Setiap pengajuan refund tercatat untuk keperluan audit.
Kebijakan ini berlaku platform-wide; organizer tidak dapat
menetapkan kebijakan yang lebih ketat tanpa persetujuan tertulis
dari SeTrip.
</p>
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900"> <h2 className="mb-3 text-lg font-bold text-neutral-900">
8. Tanggung Jawab Organizer 9. Tanggung Jawab Organizer
</h2> </h2>
<p className="mb-3">Organizer wajib:</p> <p className="mb-3">Organizer wajib:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
@@ -150,7 +213,7 @@ export default function TermsPage() {
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">9. Risiko Perjalanan</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">10. Risiko Perjalanan</h2>
<p className="mb-3"> <p className="mb-3">
Pengguna memahami bahwa aktivitas perjalanan, terutama kegiatan Pengguna memahami bahwa aktivitas perjalanan, terutama kegiatan
outdoor, memiliki risiko termasuk namun tidak terbatas pada: outdoor, memiliki risiko termasuk namun tidak terbatas pada:
@@ -169,7 +232,7 @@ export default function TermsPage() {
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900"> <h2 className="mb-3 text-lg font-bold text-neutral-900">
10. Batasan Tanggung Jawab 11. Batasan Tanggung Jawab
</h2> </h2>
<p className="mb-3">SeTrip tidak bertanggung jawab atas:</p> <p className="mb-3">SeTrip tidak bertanggung jawab atas:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
@@ -182,7 +245,7 @@ export default function TermsPage() {
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900"> <h2 className="mb-3 text-lg font-bold text-neutral-900">
11. Larangan Transaksi di Luar Platform 12. Larangan Transaksi di Luar Platform
</h2> </h2>
<p className="mb-3"> <p className="mb-3">
Pengguna disarankan untuk tidak melakukan transaksi di luar Pengguna disarankan untuk tidak melakukan transaksi di luar
@@ -196,9 +259,9 @@ export default function TermsPage() {
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">12. Sistem Review</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">13. Sistem Review</h2>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Pengguna dapat memberikan review setelah trip</li> <li>Peserta dapat memberikan review setelah trip selesai</li>
<li>Review harus jujur dan tidak mengandung unsur fitnah</li> <li>Review harus jujur dan tidak mengandung unsur fitnah</li>
<li>SeTrip berhak menghapus review yang melanggar</li> <li>SeTrip berhak menghapus review yang melanggar</li>
</ul> </ul>
@@ -206,7 +269,7 @@ export default function TermsPage() {
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900"> <h2 className="mb-3 text-lg font-bold text-neutral-900">
13. Penangguhan &amp; Penghentian Akun 14. Penangguhan &amp; Penghentian Akun
</h2> </h2>
<p className="mb-3">SeTrip berhak untuk:</p> <p className="mb-3">SeTrip berhak untuk:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
@@ -223,7 +286,7 @@ export default function TermsPage() {
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">14. Perubahan Layanan</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">15. Perubahan Layanan</h2>
<p className="mb-3">SeTrip dapat:</p> <p className="mb-3">SeTrip dapat:</p>
<ul className="ml-5 list-disc space-y-1.5"> <ul className="ml-5 list-disc space-y-1.5">
<li>Mengubah fitur</li> <li>Mengubah fitur</li>
@@ -235,7 +298,7 @@ export default function TermsPage() {
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900"> <h2 className="mb-3 text-lg font-bold text-neutral-900">
15. Perubahan Syarat &amp; Ketentuan 16. Perubahan Syarat &amp; Ketentuan
</h2> </h2>
<p className="mb-3"> <p className="mb-3">
SeTrip dapat memperbarui Syarat &amp; Ketentuan ini kapan saja. SeTrip dapat memperbarui Syarat &amp; Ketentuan ini kapan saja.
@@ -248,7 +311,7 @@ export default function TermsPage() {
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">16. Hukum yang Berlaku</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">17. Hukum yang Berlaku</h2>
<p> <p>
Syarat &amp; Ketentuan ini diatur oleh hukum yang berlaku di Syarat &amp; Ketentuan ini diatur oleh hukum yang berlaku di
Republik Indonesia. Republik Indonesia.
@@ -256,7 +319,7 @@ export default function TermsPage() {
</section> </section>
<section> <section>
<h2 className="mb-3 text-lg font-bold text-neutral-900">17. Kontak</h2> <h2 className="mb-3 text-lg font-bold text-neutral-900">18. Kontak</h2>
<p> <p>
Jika Anda memiliki pertanyaan, silakan hubungi:{" "} Jika Anda memiliki pertanyaan, silakan hubungi:{" "}
<a <a