Files
services_core/app/Models/PaymentTransaction.php
T
2026-07-31 13:57:11 +07:00

50 lines
1.1 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class PaymentTransaction extends Model
{
protected $guarded = ['id'];
protected function casts(): array
{
return [
'amount' => 'decimal:2', 'provider_fee' => 'decimal:2', 'platform_fee' => 'decimal:2',
'total_amount' => 'decimal:2', 'expires_at' => 'datetime', 'paid_at' => 'datetime',
'failed_at' => 'datetime', 'metadata' => 'array',
];
}
public function account()
{
return $this->belongsTo(PaymentGatewayAccount::class, 'payment_gateway_account_id');
}
public function tenant()
{
return $this->belongsTo(Tenant::class);
}
public function user()
{
return $this->belongsTo(User::class);
}
public function customer()
{
return $this->belongsTo(Customer::class);
}
public function invoice()
{
return $this->belongsTo(Invoice::class);
}
public function attempts()
{
return $this->hasMany(PaymentAttempt::class);
}
}