Ana içeriğe geç

Version Docs Updated

Amaç

Bu sayfa, bir ödeme talebinin (Payout) oluşturulmasından kesinleşmesine kadar geçtiği iş akışı eyaletlerini, geçiş kurallarını ve güvenlik bariyerlerini açıklar.

🔄 Payout Yaşam Döngüsü

MHM Rentiva, ödeme süreçlerini yönetmek için katı kurallara sahip bir Approval State Machine (Onay Eyalet Makinesi) kullanır. Her geçiş (Transition), hem sistemsel risk puanına hem de insan müdahalesine (Maker-Checker) tabidir.


🏗️ Eyaletler (States)

Sistemdeki her Payout talebi aşağıdaki eyaletlerden birinde bulunur:

EyaletKodAçıklama
PendingpendingTalep yeni oluşturuldu, risk analizi bekleniyor.
Under Reviewunder_reviewOrta riskli talepler için manuel inceleme aşaması.
Approved Stage 1approved_stage_1İlk seviye onayı alınmış (İnceleme tamam).
Approved Stage 2approved_stage_2Nihai onay (Finalize) aşaması.
Time Lockedtime_lockedOnaylandı ancak "Soğutma Süresi" (Cooling Period) içinde bekliyor.
ExecutedexecutedÖdeme başarıyla gerçekleştirildi (Ledger kapandı).
RejectedrejectedTalep reddedildi, bakiye satıcıya iade edildi.

🌳 Eyalet Geçiş Diyagramı


🛡️ Geçiş Kuralları (Transition Rules)

1. Maker-Checker Segregation

Bir ödemeyi onaylayan kişi (Checker), o ödemeyi başlatan veya hazırlayan kişi (Maker) ile aynı olamaz. Bu kural, dâhili suistimalleri önlemek için kod seviyesinde (ApprovalStateMachine::validate_transition) zorunlu kılınmıştır.

2. Fast-Track (Hızlı Geçiş)

Risk puanı LOW (Düşük) olan talepler, Pending eyaletinden doğrudan Approved Stage 2 eyaletine geçebilir. Bu, operasyonel yükü azaltmak için güvenilir satıcılara uygulanan bir kolaylıktır.

3. Atomic Updates

Eyalet geçişleri veritabanında nükleer (atomic) olarak gerçekleştirilir. UPDATE ... WHERE current_state = old_state sorgusu kullanılarak, aynı ödeme talebi üzerinde iki yöneticinin aynı anda işlem yapması (Race Condition) engellenir.


⏳ Time-Lock ve Finalization

Approved Stage 2 onayı alındığında, bakiye Ledger üzerinde payout_debit olarak nükleer şekilde düşülür ancak ödeme henüz fiziksel olarak yapılmaz. Para Time Locked durumunda bekler. Kilit süresi dolduğunda sistem otomatik olarak ödemeyi Executed durumuna çeker.

Bölüm Sonu Özeti

  • Eyalet geçişleri katı bir matris ile sınırlanmıştır; rastgele geçiş yapılamaz.
  • Maker-Checker kuralı sistemin temel güvenlik direğidir.
  • Time-Lock, hatalı işlemler için "Geri Dönüş" (Rollback) imkânı sağlar.

Değişiklik Günlüğü

TarihSürümNot
19.03.20264.21.2Sayfa, ApprovalStateMachine eyalet matrisi ve Time-Lock mantığıyla güncellendi.