kpasokhi/savano
Laravel package for integrating the Savano payment gateway. Install via Composer, request payments with amount/order ID/callback, redirect users to the bank URL, then verify transactions using authority, price, and order ID; includes result status and error messages.
payment.created, payment.failed), limiting observability. A TPM could advocate for integrating with Laravel’s events or queues for async workflows.1.*) is risky—TPM should push for semver compliance or a wrapper layer to isolate changes.actionVerify().price, orderId, or authority could lead to injection or race conditions.orderId, authority, and price. TPM should define a migration for a payments table with fields:
Schema::create('payments', function (Blueprint $table) {
$table->id();
$table->string('order_id')->unique();
$table->decimal('price', 10, 2);
$table->string('authority')->nullable();
$table->string('status'); // e.g., 'pending', 'completed', 'failed'
$table->timestamps();
});
actionRequest()/actionVerify() in a sandbox environment..env and use Laravel’s config caching.price, orderId, and authority in actionVerify().actionVerify() to a queue job if Savano supports delayed callbacks.composer validate post-integration.payments table schema and migrations.PaymentController with basic CRUD for payments.SavanoService) to encapsulate Savano logic.HandleIncomingWebhook.SavanoService (mock Savano API).1.*, future versions may break. TPM should:
1.0.1) until stability is proven.throttle middleware.circuit-breaker) for Savano’s API.savano->setEndpoint('eu')).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Savano API downtime | Payments fail, revenue loss | Fallback to secondary gateway; notify users. |
| Malformed Savano response | App crashes or incorrect redirects | Input validation |
How can I help you explore Laravel packages today?