Layang Docs

Fitur Mitra

Dokumentasi teknis dan alur bisnis fitur Mitra pada Mahirku Platform

Dokumentasi Fitur Mitra – Mahirku Platform

Dokumentasi ini menjelaskan implementasi teknis dan alur bisnis dari fitur Mitra di Mahirku Platform.
Fitur ini memungkinkan pengguna dengan role Mitra untuk membangun jaringan afiliasi dan memperoleh komisi bertingkat (override commission).


1. Overview

Fitur Mitra dirancang untuk menciptakan struktur pemasaran bertingkat yang sederhana dan terkontrol:

  • Mitra
    Pengguna level atas yang dapat merekrut member di bawahnya.
  • Affiliator
    Member yang telah menyelesaikan tes (Thinking Style / DISC) dan berhak menyebarkan kode referral.
  • End User
    Pengguna yang mendaftar melalui link Affiliator dan membeli token.

Key Benefits

  • Mitra
    Mendapatkan komisi pasif dari penjualan yang dilakukan oleh Affiliator di bawahnya.
  • Affiliator
    Mendapatkan komisi langsung dari penjualan token ke End User.
  • Platform
    Memperluas jangkauan pemasaran melalui jaringan Mitra.

2. Struktur Role & Hirarki

RoleIDDeskripsi
Super Admin1Administrator sistem, mengatur persentase komisi Mitra
Affiliator2Pengguna yang bisa membagikan referral link
User3Pengguna biasa / member baru yang belum tes
Mitra4Role khusus dengan dashboard monitoring member & komisi

Hubungan Database (ERD Snippet)

  • Users
    • Memiliki kolom parentId (self-referencing FK ke users.id)
    • Jika User A direkrut Mitra B → UserA.parentId = MitraB.id
  • Packages
    • Memiliki kolom mitraCommissionRate
    • Menentukan persentase komisi Mitra per paket

3. Alur Bisnis (Business Flows)

A. Akuisisi Member (Mitra → Member)

  1. Mitra login ke Mitra Dashboard
  2. Masuk ke menu Members
  3. Klik Add Member dan mengisi form
  4. Sistem membuat user baru dengan:
    • Role: User (ID: 3)
    • parentId: ID Mitra

B. Upgrade Member ke Affiliator

  1. Member login sebagai User
  2. Member membeli token (jika diperlukan)
  3. Member menyelesaikan tes Thinking Style atau DISC
  4. Sistem otomatis mengecek:
    • User memiliki parentId
    • Role masih User
  5. Jika valid → role di-upgrade menjadi Affiliator (ID: 2)
  6. User dapat mengakses fitur Affiliator & referral link

C. Alur Komisi (Commission Flow)

Saat End User membeli token melalui referral Affiliator (di bawah Mitra):

  1. End User membeli paket (contoh: Rp 100.000)
  2. Komisi Affiliator
    • Rumus: Harga Paket × Package.commissionRate
    • Contoh: 100.000 × 10% = Rp 10.000
  3. Komisi Mitra (Override)
    • Rumus: Harga Paket × Package.mitraCommissionRate
    • Contoh: 100.000 × 5% = Rp 5.000
  4. Data komisi dicatat di:
    • AffiliateCommissions
    • Saldo diperbarui di AffiliateBalances

4. Implementasi Backend

Perubahan Database

  • roles
    • Menambahkan role mitra
  • packages
    • Menambahkan kolom mitraCommissionRate (DECIMAL)
  • users
    • Memanfaatkan parentId untuk hirarki Mitra

API Endpoints

Base URL: /api/mitra

MethodEndpointDeskripsiAccess
GET/dashboardStatistik Mitra (member & komisi)Mitra
GET/membersDaftar member & status afiliasiMitra
POST/membersMenambah member baruMitra

File Penting

  • src/utils/affiliateUtils.ts
    Perhitungan komisi Mitra & Affiliator
  • src/controllers/mitraController.ts
    Logic dashboard dan manajemen member
  • src/middlewares/roleMiddleware.ts
    Middleware isMitra

5. Implementasi Frontend

Mitra Dashboard

  • Layout
    • Dashboard standar dengan sidebar khusus Mitra
  • Overview
    • Total member
    • Total komisi
  • Members
    • Tabel member
    • Status: User vs Affiliator
    • Total kontribusi komisi
    • Form Add Member

Admin Panel

  • Package Management
    • Admin dapat mengatur Mitra Commission Rate (%)

6. Cara Penggunaan (User Guide)

Setup Awal (Admin)

  1. Login sebagai Super Admin
  2. Masuk ke Paket Token
  3. Atur Mitra Commission Rate
  4. Buat user dan assign role Mitra

Penggunaan (Mitra)

  1. Login sebagai Mitra
  2. Pantau performa di Dashboard
  3. Tambahkan member melalui menu Members
  4. Arahkan member untuk menyelesaikan tes

7. Catatan Teknis

  • Komisi Mitra dihitung dari harga paket, bukan komisi Affiliator
  • Komisi hanya tercatat jika status pembayaran paid
  • Upgrade role otomatis terjadi di controller tes

On this page