Bakiye ve Ödeme Tercihi Kancaları

1.7k görüntülenme Markdown

Cüzdan, bakiye düzeltmeleri ve otomatik ödeme zincirinin dört kancası.

Genel Bakış

Müşteri cüzdanına para dört yoldan girer ya da çıkar: yükleme talebi, faturadan geçen alacak, yöneticinin elle düzeltmesi ve otomatik ödeme zincirinin değişmesi.

Para birimi burada bir tuzaktır: bakiye kendi biriminde tutulur ve fatura başka bir birimde olabilir. Tutarları taşırken hangi birimde olduklarına bakın.

Referans

Otomatik ödeme zincirini izleme

actionuser.autopay_changed
AccountCards zincirin başı

Hesabın otomatik ödeme zinciri değiştiğinde çalışır.

Parametreler 2
$uidintHesabın sahibi.
$autopayCtxarrayZincirin güncel başı. Zincir boşaldıysa bu değer boş gelir: hesabın artık otomatik ödeyecek kartı yoktur ve yenileme başarısız olacaktır.
Dönüş 1
voidDönüş yoksayılır.
Dinleyici
Hook::add('action:user.autopay_changed', 10, function ($uid, $autopayCtx) {
    // Zincir bosaldiysa yenileme basarisiz olacak.
    if (!($autopayCtx['backup_card'] ?? null)) Acme::warnNoCard($uid);
});

Bakiyeye alacak geçmesini izleme

actionuser.balance_credited
Invoices dönüşüm sonrası

Bir faturadan müşteri bakiyesine alacak geçtiğinde çalışır.

Parametreler 4
$user_idintBakiyesi artan müşteri.
$amountfloatGeçen tutar, kullanıcının bakiye para biriminde ve döviz dönüşümünden sonra. Faturanın tutarıyla aynı olmayabilir: fatura başka bir para biriminde olabilir.
$currencyintBakiye para birimi.
$invoicearrayKaynak fatura.
Dönüş 1
voidDönüş yoksayılır.
Dinleyici
Hook::add('action:user.balance_credited', 10, function ($user_id, $amount, $currency, $invoice) {
    // Tutar bakiye para biriminde: faturaninkiyle karistirmayin.
    Acme::ledgerCredit($user_id, $amount, $currency);
});

Bakiye düzeltmesini izleme

actionuser.credit_adjusted
AdminUsers iki yön

Yönetici bir hesabın bakiyesini elle düzelttiğinde çalışır.

Parametreler 5
$user_idintBakiyesi değişen müşteri.
$typestringYön: up alacak, down borç.
$amountfloatDüzeltme tutarı.
$new_balancefloatİşlem sonrası bakiye.
$cidintBakiye para birimi.
Dönüş 1
voidDönüş yoksayılır.
Dinleyici
Hook::add('action:user.credit_adjusted', 10,
    function ($user_id, $type, $amount, $new_balance, $cid) {
        Acme::ledgerAdjust($user_id, $type, $amount, $new_balance);
    });

Para yükleme talebini izleme

actionuser.funds_added
AccountBalance net tutar

Müşteri cüzdanına para yüklemek istediğinde çalışır.

Parametreler 3
$uidintCüzdanın sahibi.
$amountfloatYüklenmek istenen net tutar. Vergi ve kuruluş komisyonu dâhil değildir: müşterinin ödeyeceği toplam bundan yüksektir. Muhasebeye bu sayıyı ödenen tutar diye yazmayın.
$fundsCtxarrayBağlam: talebin geldiği ekran ve alt sınır.
Dönüş 1
voidDönüş yoksayılır.
Dinleyici
Hook::add('action:user.funds_added', 10, function ($uid, $amount, $fundsCtx) {
    // NET tutar: vergi ve komisyon dahil degil.
    Acme::noteTopupIntent($uid, $amount);
});

Tuzaklar

Bakiye tutarı faturanın tutarı değildir

Bakiyeye geçen tutar kullanıcının bakiye para biriminde ve dönüşümden sonra gelir. Faturanın kendi tutarıyla eşit olmayabilir; ikisini aynı sayı sanmak muhasebede fark üretir.

Yükleme tutarı net tutardır

Para yükleme kancasındaki tutar net: vergi ve kuruluş komisyonu dâhil değildir. Müşterinin ödediği toplam bundan yüksektir; bu sayıyı tahsil edilen tutar diye kaydetmeyin.

Faydalı oldu mu?

Geri bildiriminiz için teşekkürler!

Hâlâ Yardıma mı İhtiyacınız Var?

Yukarıda bulamadığınız her şey için destek ekibimiz her zaman yanınızda.