Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Model Data Platform Pinjaman Peer-to-Peer

Ada banyak portal online yang memungkinkan investor meminjamkan uang langsung ke peminjam individu – tanpa bank yang bertindak sebagai perantara. Model data apa yang mungkin mendasari situs semacam itu?

Platform pinjaman online menyatukan peminjam dan investor dan memungkinkan mereka untuk memilih kepada siapa mereka ingin meminjamkan uang mereka (dalam kasus investor) dan dari siapa mereka ingin meminjam uang (dalam kasus peminjam). Beberapa situs pinjaman peer-to-peer juga memungkinkan peminjam dan investor untuk membuat kesepakatan mereka sendiri dalam hal suku bunga pinjaman (yaitu suku bunga) dan jangka waktu pinjaman.

Mari kita lihat sekilas cara kerja portal ini, lalu beralih ke model data yang dapat mendukungnya.

Bagaimana Cara Kerja Platform Pinjaman Peer-to-Peer?

  • Peminjam memberikan jumlah pinjaman yang diinginkan dan perincian yang relevan seperti usia, pekerjaan, pendapatan saat ini, pinjaman saat ini, skor kredit, saldo bank bulanan rata-rata, jadwal gaji selama enam bulan terakhir, setiap pertanyaan atau default pada akun mereka dalam dua belas terakhir bulan, alasan meminjam, niat membayar, dll.
  • Investor mendaftar dengan mengisi detail yang relevan, termasuk jumlah total yang ingin mereka investasikan. Perhatikan bahwa mereka harus mematuhi KYC (Know Your Customer) dan peraturan pajak. KYC adalah proses, yang banyak digunakan oleh lembaga keuangan, yang memperoleh informasi singkat tentang identitas peminjam/nasabah.
  • Portal menyaring profil peminjam dan memberi mereka peringkat risiko (A sampai F; A adalah peringkat terbaik, dan F berarti terburuk) berdasarkan statistik keuangan mereka saat ini dan terakhir dan persyaratan pinjaman mereka.
  • Portal juga dapat memutuskan jangka waktu pinjaman dan suku bunga; ini terutama didasarkan pada peringkat risiko pelanggan.
  • Permintaan pinjaman peminjam (sebut saja mereka "tiket pinjaman" mulai sekarang) terdaftar (ditampilkan di portal) hanya setelah proses penyaringan untuk pelanggan tersebut selesai.
  • Investor terdaftar dapat melihat tiket pinjaman yang terdaftar dan peringkat risiko terkait, persyaratan pinjaman, dan detail relevan lainnya. Ini membantu mereka membuat keputusan tentang investasi mereka.
  • Untuk memenuhi tiket pinjaman, investor dapat berkontribusi dalam jumlah berapa pun, dari minimum portal (misalnya $50) hingga jumlah total pinjaman.
  • Setelah tiket pinjaman dipenuhi, investor yang telah berkontribusi pada tiket pinjaman harus melepaskan dana kepada peminjam. Biasanya, semua transaksi keuangan situs peminjaman menggunakan rekening escrow.
  • Setelah jumlah pinjaman dicairkan, peminjam membayar kembali dalam bentuk EMI (Equated Monthly Installments). EMI dikumpulkan dalam rekening escrow dan akhirnya didistribusikan kembali kepada investor berdasarkan saham mereka dalam tiket pinjaman.
  • Pembayaran EMI mencakup kontribusi terhadap pokok pinjaman dan bunganya. Pada tahap awal, pembayaran bunga merupakan bagian utama dari EMI.
  • Ada dua kemungkinan skenario pinjaman:peminjam membayar sebagian atau seluruh jumlah terutang di muka atau pembayaran EMI tertunda. Penundaan ini bisa di mana saja dari beberapa hari hingga beberapa bulan. Jika pembayaran tertunda, peminjam akan dikenakan bunga tambahan dan penalti atas EMI yang gagal bayar.
  • Jika peminjam membayar sebagian dari jumlah pinjaman terutang, itu akan didistribusikan di antara investor berdasarkan saham mereka dalam tiket pinjaman.

Model Data

Anda dapat melihat model data lengkap di bawah ini. Ini terutama berkisar pada dua entitas:investor yang meminjamkan uang dan peminjam yang memintanya.




Bagian 1:Investor

Platform pinjaman peer-to-peer (P2P) online memungkinkan orang untuk mendaftar sebagai investor dengan memasukkan detail dasar mereka, termasuk metode pembayaran dan calon. Itu juga menangkap semua transaksi yang mereka lakukan terhadap akun escrow mereka dengan platform P2P.

investor tabel menyimpan detail dasar investor. Sebagian besar kolom dalam tabel ini cukup jelas kecuali untuk:

  • id – Pengidentifikasi unik yang diberikan kepada setiap investor individu.
  • tax_id – Nomor pajak pemerintah investor (atau, di AS, nomor jaminan sosial (SSN) mereka). Kolom ini membantu platform tetap mematuhi peraturan pajak.
  • kyc_complete – Proses KYC dilakukan untuk menangkap detail lengkap investor. Kolom ini berisi Y atau N, tergantung pada apakah proses untuk investor tersebut sudah selesai.
  • escrow_account_number – Setiap investor diberikan akun escrow yang unik. Semua transaksi keuangan antara investor dan peminjam dilakukan melalui rekening escrow ini.
  • fund_committed – Jumlah yang telah dilakukan investor untuk investasi (sejauh ini).

nominee tabel menyimpan informasi tentang calon investor. Semua investor dapat mendaftarkan calon di profil mereka. Calon adalah orang yang dikenal investor – kemungkinan besar anggota keluarga atau teman mereka – yang berhak menerima pembayaran jika investor meninggal. Semua kolom dalam tabel ini cukup jelas.

account_statement tabel menyimpan rincian semua transaksi yang dilakukan oleh investor. Transaksi dapat berupa deposit atau penarikan. Ketika seorang investor memasukkan sejumlah uang ke rekening escrow mereka, ini adalah transaksi 'deposit'. Transaksi 'penarikan' terjadi ketika investor menarik sebagian atau seluruh uang di rekening escrow mereka. Dalam kedua kasus, closing_balance diperbarui sesuai.

payment_method tabel menyimpan informasi tentang metode pembayaran yang digunakan untuk menambahkan dana ke rekening escrow mereka. Investor dapat menambahkan beberapa rekening bank untuk menyetor atau menarik uang mereka. Kolom dalam tabel ini cukup jelas.

Bagian 2:Peminjam

Area subjek ini menjelaskan bagaimana kami menangkap dan memelihara detail peminjam; itu juga mencerahkan kita tentang proses yang terlibat dalam verifikasi peminjam, atau memahami kemampuan dan kemauan mereka untuk membayar kembali.

Prosesnya dimulai dengan mendaftarkan peminjam di situs. Kami akan menangkap informasi tentang pendidikan, profesi, status keuangan, dan persyaratan pinjaman mereka. Portal biasanya menangkap detail pendidikan karena mereka memainkan peran kunci dalam proses pengambilan keputusan investor, terutama ketika peminjam tidak memiliki detail pekerjaan yang menguntungkan. Rincian keuangan termasuk pendapatan bulanan mereka, setiap hutang saat ini, laporan bank selama enam bulan terakhir, cek yang baru saja terpental, dan apakah mereka memiliki pendapatan tetap.

Setelah proses verifikasi ini selesai, peminjam diberi peringkat risiko. Persyaratan pinjaman mereka (yaitu tiket pinjaman) tersedia di portal untuk dilihat publik. Pada titik waktu tertentu, investor dapat melihat semua tiket pinjaman terbuka, yaitu yang belum didanai 100%.

borrower tabel menyimpan rincian profil peminjam, yang ditangkap dalam proses pendaftaran. Kolom dalam tabel ini cukup jelas, kecuali untuk yang berikut:

  • kyc_complete – Memiliki nilai Y atau N, tergantung pada apakah proses KYC untuk peminjam ini telah selesai.
  • highest_qualification – Kualifikasi pendidikan tertinggi dari peminjam ini; misalnya gelar sarjana, gelar sarjana, dll.
  • passout_year – Tahun ketika peminjam menyelesaikan kualifikasi tertinggi mereka.
  • university_name – Universitas tempat peminjam menerima kualifikasi tertinggi.

employment_detail tabel menyimpan rincian pekerjaan peminjam. Kolom dalam tabel ini cukup jelas.

Setelah portal memverifikasi detail dasar peminjam, itu membuat tiket pinjaman untuk persyaratan mereka dan menangkap aset dan kewajiban mereka. Rincian aset dan kewajiban tersedia bagi investor untuk referensi. Investor mungkin perlu merujuk pada detail ini untuk menentukan kemampuan peminjam untuk membayar kembali.

Tiket pinjaman dibuat untuk setiap persyaratan pinjaman. Informasi ini disimpan di loan_ticket meja. Kolomnya adalah:

  • id – Nomor unik yang diberikan untuk setiap tiket pinjaman.
  • borrower_id – Kolom referensi dari tabel peminjam.
  • loan_amount – Jumlah pinjaman yang diinginkan.
  • loan_tenure_in_months – Jumlah bulan di mana pinjaman akan dilunasi.
  • interest_rate – Tingkat bunga untuk pinjaman itu.
  • risk_rating – Peringkat risiko diberikan kepada setiap peminjam. Itu tergantung pada aset, kewajiban, dan detail keuangan lainnya.
  • reason_for_loan – Mengapa peminjam membutuhkan pinjaman ini. Alasan pinjaman merupakan faktor kunci bagi beberapa investor. Misalnya, beberapa investor lebih suka berinvestasi untuk alasan pendidikan atau konsolidasi utang, tetapi mereka mungkin menjauhi pinjaman yang membiayai liburan.
  • ability_to_repay – Portal menangkap poin-poin yang mengacu pada kemampuan peminjam untuk membayar kembali pinjaman. Poin-poin ini dipertimbangkan oleh investor selama proses pengambilan keputusan mereka.
  • risk_factors – Kolom ini menyimpan informasi yang ditangkap oleh portal dengan mengacu pada risiko yang terkait dengan investasi dalam pinjaman ini.

Peringkat risiko dihitung melalui algoritme yang didasarkan pada detail yang diajukan oleh peminjam. Seorang karyawan platform meninjau profil setiap peminjam, memvalidasi detail keuangan mereka (termasuk skor kredit mereka), dan dapat memanipulasi peringkat risiko, jumlah pinjaman (misalnya dengan menurunkan jumlah jika diperlukan) dan jangka waktu pinjaman selama pemrosesan aplikasi pinjaman.

borrower_liability tabel berisi rincian tentang pinjaman luar biasa peminjam. Kolom dalam tabel ini adalah:

  • id – Kunci utama tabel.
  • loan_ticket_id – Referensikan loan_ticket meja.
  • liability_cost –Jumlah pinjaman yang belum dibayar.
  • liability_type – Jenis kewajiban, mis. pinjaman rumah, pinjaman mobil, pinjaman pribadi, dll.
  • liability_start_date – Tanggal saat pinjaman diambil.
  • liability_end_date – Tanggal saat pinjaman akan dilunasi.

borrower_asset tabel menyimpan informasi tentang aset dan investasi peminjam. Aset ini dapat berupa deposito tetap, real estat, dan investasi (ekuitas/utang) yang dimiliki sepenuhnya atau sebagian oleh peminjam. Ini sebenarnya bukan jaminan untuk pinjaman, tetapi dapat dicairkan jika diperlukan. Selain itu, memberikan detail aset membuat profil peminjam lebih kuat. Kolom dalam tabel ini adalah:

  • id – Kunci utama tabel.
  • loan_ticket_id – Referensi tabel loan_ticket.
  • asset_type – Jenis aset, mis. real estat, deposito tetap, reksa dana, saham, dll.
  • asset_value – Nilai pasar aset saat ini.
  • ownership_percentage – Persentase kepemilikan peminjam. Beberapa aset dibeli dalam kemitraan dengan orang lain.
  • possession_since – Tanggal peminjam memperoleh aset ini.

Bagian 3:Pemenuhan dan Pelunasan Pinjaman

Subyek ini berisi rincian proposal pinjaman, pemenuhan, dan pembayaran kembali.

investor_proposal tabel menyimpan data yang terkait dengan proposal investor tentang tiket pinjaman. Setelah tiket pinjaman dipasang di portal, investor dapat mengajukan proposal mereka. Sebagian besar kolom dalam tabel ini cukup jelas, kecuali untuk:

  • proposal_amount – Jumlah yang ingin dipinjamkan oleh investor. Investor dapat mengajukan jumlah hingga 100% dari tiket pinjaman.
  • proposal_date – Tanggal pengajuan proposal.
  • cancel_date – Investor dapat membatalkan proposal yang belum dikonversi menjadi permintaan pencairan. Kolom ini berisi tanggal (jika ada) saat proposal dibatalkan.
  • last_update_date – Investor juga dapat mengubah jumlah proposal, tetapi hanya sebelum diubah menjadi permintaan pencairan. Kolom ini berisi tanggal pembaruan proposal terbaru.

Sekarang, mari kita beralih ke loan_ticket_fulfilment meja. Setelah tiket pinjaman sepenuhnya didanai, permintaan pemenuhan dibuat untuk memenuhi tiket pinjaman. Permintaan pemenuhan ini juga dikenal sebagai permintaan pencairan, yaitu agar investor melepaskan dana ke rekening peminjam. (Catatan:Tabel ini juga berisi EMI dan informasi pra-penutupan, yang akan kita bahas secara terpisah.) Kolom dalam tabel ini adalah:

  • id – Nomor unik yang ditetapkan untuk setiap permintaan pemenuhan. Jika ada 10 investor yang berkontribusi pada tiket pinjaman, akan ada 10 catatan dalam tabel ini yang mengacu pada tiket pinjaman tersebut.
  • investor_proposal_id – ID setiap investor yang telah berkontribusi pada tiket pinjaman; ini juga merujuk pada jumlah yang harus dikeluarkan investor.
  • release_date_from_investor – Tanggal investor melepaskan dana ke rekening escrow.
  • disburse_date_to_borrower – Tanggal saat jumlah dikreditkan ke rekening peminjam. Biasanya kedua transaksi ini terjadi pada hari yang sama atau dengan jeda satu hari kerja.
  • last_update_date – Kolom ini diperbarui ketika catatan diperbarui.

loan_ticket_fulfillment tabel juga menyimpan informasi tentang setiap bagian investor dalam pembayaran pra-EMI dan EMI. Ketika peminjam hanya mengakses sebagian dari jumlah pinjaman mereka, mereka diharuskan membayar bunga hanya dari jumlah yang dicairkan (sampai jumlah pinjaman penuh tersedia). Bunga ini disebut bunga pra-EMI (PEMI) dan dibayarkan setiap bulan sampai pembayaran terakhir dilakukan, setelah itu EMI dimulai.

  • pre_emi_due_date – Tanggal saat pra-emi jatuh tempo. Biasanya, itu adalah hari terakhir bulan ketika pinjaman itu dipenuhi.
  • pre_emi_amount – Jumlah pra-emi yang dihitung.
  • emi_amount – Jumlah yang dibayar peminjam sebagai cicilan bulanan.
  • emi_start_date – Tanggal saat EMI dimulai. Biasanya, ini adalah hari pertama bulan berikutnya (misalnya pinjaman dipenuhi pada 13 Januari dan EMI dimulai pada 1 Februari).
  • emi_end_date – Tanggal ketika peminjam dijadwalkan untuk membayar EMI terakhir. Ini adalah kolom terhitung yang diperbarui pada saat pinjaman dipenuhi. Jika tenor pinjaman adalah 12 bulan dan tanggal mulai EMI 1 Februari 2019, maka EMI terakhir akan dibayarkan pada 1 Januari 2020.
  • number_of_total_emi – Jumlah EMI yang harus dibayar dalam pinjaman ini.

Peminjam dapat menutup (melunasi) pinjaman mereka lebih awal dengan membayar jumlah pokok terutang secara keseluruhan. Dalam istilah perbankan, ini dikenal sebagai 'pra-penutupan' pinjaman. Peminjam dapat melakukan pra-penutupan pinjaman untuk satu atau lebih pemberi pinjaman pada satu waktu dengan membayar bagian pemberi pinjaman dari jumlah pokok terutang. Saya telah menambahkan dua kolom ke tabel untuk menangani kasus ini:

  • pre_closure_flag – Kolom ini menandakan apakah pinjaman sudah ditutup sebelumnya. Secara default, kolom ini tetap kosong.
  • pre_closure_date – Tanggal saat pinjaman ditutup sebelumnya. Untuk pinjaman berkelanjutan, kolom ini tetap kosong.

loan_repayment_schedule tabel berisi rincian tentang pembayaran pinjaman. Segera setelah pinjaman dicairkan, catatan dimasukkan ke dalam tabel ini untuk setiap jadwal pembayaran EMI. Jika, misalnya, ada 10 investor yang berinvestasi dalam satu tiket pinjaman, akan ada 10 catatan di loan_ticket_fulfillment meja. Jika jangka waktu pinjaman tersebut adalah 12 bulan, loan_repayment_schedule tabel akan berisi 120 catatan (10 catatan x 12 bulan).

Sebelum melanjutkan, lihat contoh jadwal pembayaran:

Beberapa kolom di loan_repayment_schedule tabel adalah kolom jumlah, dibuat untuk menyimpan jumlah yang jatuh tempo dan jumlah yang dibayarkan untuk berbagai komponen EMI. Beberapa kolom lainnya adalah:

  • id – Nomor unik yang ditetapkan untuk setiap pembayaran.
  • loan_ticket_fulfillment_id – Kolom ini berisi detail terkait investor, tiket pinjaman, dan peminjam.
  • is_emi_payment_defaulted – Jika EMI tidak dibayar pada tanggal jatuh tempo, kolom ini diperbarui dengan 'Y'. Secara default, kolom ini tetap kosong.
  • is_emi_payment_advanced – Jika satu atau lebih EMI mendatang telah dibayarkan, kolom ini diperbarui ke 'Y' terhadap semua catatan tersebut.

Apa Pendapat Anda Tentang Model Data Platform Peminjaman?

Apakah menurut Anda mengizinkan peminjam dan investor membuat kesepakatan pinjaman mereka sendiri itu rumit? Perubahan apa yang diperlukan model data ini jika kita mengizinkan mereka untuk menegosiasikan suku bunga pinjaman dan tenor?

Beri tahu kami pandangan Anda di bagian komentar.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Membuat Tabel dengan Kunci Asing di SQL

  2. Mengatasi Pengoptimalan yang Terlewatkan

  3. SQL Alias ​​Dijelaskan

  4. SQL Antar Operator

  5. Cara Mengatur Ulang Kata Sandi Pengguna Master Amazon RDS