wisex
$kalanTutar = $invoice->borclanilantutar - $SebzeItem->amount;
Bu yanlış. Bunu anlatmaya çalışıyorum. Çıkarma işlemi yapmayacaksınız.
$borclanilantutar= money($invoice->borclanilantutar, $invoice->currency_code);
$amount = money($SebzeItem->amount, $invoice->currency_code);
$kalanTutar = $borclanilantutar->substract($amount);
Money objesi kullanacaksanız böyle kullanmanız lazım. En son kullanılmayacak sonuca kadar hep money objesi kullanacaksınız. Bu işlemden sonra en son artık $kalanTutar üzerinde işlem yapmayacaksanız o zaman format kullanıp Money objesinden kurtarıp veritabanına kaydedeceksiniz. Öteki türlü kuruş hataları çıkar elde ettiğiniz sonuçları toplayınca tekrar ana tutarı elde edemezsiniz.
Size basit bir soru. 10 TL'yi 3'e nasıl bölersiniz?