1. Go to this page and download the library: Download err0r/laratransaction library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?phprequire_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
useErr0r\Laratransaction\Builders\TransactionBuilder;
useErr0r\Laratransaction\Enums\TransactionStatus;
useErr0r\Laratransaction\Enums\TransactionType;
useErr0r\Laratransaction\Enums\PaymentMethod;
// Create a transaction for an order
$order = Order::find(1);
$order->transactionBuilder()
->status(TransactionStatus::PENDING)
->type(TransactionType::PAYMENT)
->paymentMethod(PaymentMethod::CREDIT_CARD)
->amount(100.00, 'USD')
->gateway('stripe')
->gatewayTransactionId('ch_123456')
->metadata(['order_id' => 12345])
->save();
// Or use the static method
$transaction = TransactionBuilder::create()
->transactionable($order)
->status(TransactionStatus::PENDING)
->type(TransactionType::PAYMENT)
->paymentMethod(PaymentMethod::CREDIT_CARD)
->amount(100.00, 'USD')
->gateway('stripe')
->gatewayTransactionId('ch_123456')
->metadata(['order_id' => 12345])
->save();
// Get all pending transactions
Transaction::pending()->get();
// Get completed transactions
Transaction::completed()->get();
// Get failed transactions
Transaction::failed()->get();
// Get cancelled transactions
Transaction::cancelled()->get();
// Get all transactions for a model
$order->transactions;
// Get the latest transaction
$order->latestTransaction;
// Access transaction details
$transaction->status; // TransactionStatus model
$transaction->type; // TransactionType model
$transaction->paymentMethod; // PaymentMethod model