laravel-netopia
A fluent interface for interacting with Netopia's services.
Info
Database
It'll create a table named netopia_payments
with the following configuration:
Schema::create('netopia_payments', function (Blueprint $table): void {
$table->string('id')->primary();
$table->string('status')->default(PaymentStatus::NotStarted->value);
$table->decimal('amount');
$table->string('currency', 6);
$table->text('description')->nullable()->default(null);
$table->nullableMorphs('billable');
$table->json('shipping_address');
$table->json('billing_address');
$table->timestamps();
});
Routes
3 routes will be added, as follows:
Method | URL | Note |
---|---|---|
GET | /netopia/pay/{payment} | Todo |
GET | /netopia/success | Todo |
POST | /netopia/ipn | Todo |
Get started
Paste into your terminal composer require codestage/laravel-netopia
Configuration
1. Environment variables
Add the following variables to your .env file:
NETOPIA_ENVIRONMENT=
NETOPIA_SIGNATURE=
2. Config file
Create a netopia.php under the app's config directory. It should return an array composed of
Parameter | Value | Info |
---|---|---|
environment | env('NETOPIA_ENVIRONMENT', 'sandbox') | The environment that Netopia is running in. Valid values are: 'sandbox', 'production' |
signature | env('NETOPIA_SIGNATURE') | The merchant signature provided by Netopia. |
currency | env('NETOPIA_CURRENCY', 'EUR') | The currency used for Netopia. |
certificate_path | array | The paths to the certificate files used for Netopia requests. |
certificate_path['public'] | base_path('certificates/' . env('NETOPIA_PUBLIC_FILE', 'netopia.cer')) | |
certificate_path['secret'] | base_path('certificates/' . env('NETOPIA_PUBLIC_FILE', 'netopia.cer')) |