mollsoft/laravel-ethereum-module

v1.0.4 2025-04-07 15:44 UTC

This package is auto-updated.

Last update: 2025-04-07 15:45:25 UTC


README

Pest Laravel Expectations

Latest Version on Packagist Php Version Php Version Total Downloads

Website Telegram

Laravel Ethereum Module is a Laravel package for work with cryptocurrency Ethereum, with the support ERC-20 tokens. It allows you to generate HD wallets using mnemonic phrase, validate addresses, get addresses balances and resources, preview and send ETH/ERC-20 tokens. You can automate the acceptance and withdrawal of cryptocurrency in your application.

You can contact me for help in integrating payment acceptance into your project.

Requirements

The following versions of PHP are supported by this version.

  • PHP 8.2 and older
  • Laravel 10 or older
  • PHP Extensions: GMP, BCMath, CType.

Installation

You can install the package via composer:

composer require mollsoft/laravel-ethereum-module

After you can run installer using command:

php artisan ethereum:install

And run migrations:

php artisan migrate

Register Service Provider and Facade in app, edit config/app.php:

'providers' => ServiceProvider::defaultProviders()->merge([
    ...,
    \Mollsoft\LaravelEthereumModule\EthereumServiceProvider::class,
])->toArray(),

'aliases' => Facade::defaultAliases()->merge([
    ...,
    'Ethereum' => \Mollsoft\LaravelEthereumModule\Facades\Ethereum::class,
])->toArray(),

For Laravel 10 you edit file app/Console/Kernel in method schedule(Schedule $schedule) add:

$schedule->command('ethereum:sync')
    ->everyMinute()
    ->runInBackground();

or for Laravel 11+ add this content to routes/console.php:

use Illuminate\Support\Facades\Schedule;

...

Schedule::command('ethereum:sync')
    ->everyMinute()
    ->runInBackground();

Examples

First you need to add Ethereum Nodes, you can register account in ANKR.COM get take HTTPS Endpoint with API key for Ethereum blockchain:

use \Mollsoft\LaravelEthereumModule\Facades\Ethereum;

Ethereum::createNode('My node', 'https://rpc.ankr.com/eth/{API_KEY}');

Second you need add Ethereum Explorer, you can register account in Etherscan.io API and take Endpoint with API key:

use \Mollsoft\LaravelEthereumModule\Facades\Ethereum;

Ethereum::createExplorer('My explorer', 'https://api.etherscan.io/api', '{API_KEY}');

You can create ERC-20 Token:

use \Mollsoft\LaravelEthereumModule\Facades\Ethereum;

$contractAddress = '0xdac17f958d2ee523a2206206994597c13d831ec7';
Ethereum::createToken($contractAddress);

Now you can create new Wallet:

use \Mollsoft\LaravelEthereumModule\Facades\Ethereum;

$wallet = Ethereum::createWallet('My wallet');