Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Ethereum Tx

Ethereum Tx Laravel Package

web3p/ethereum-tx

Sign and serialize Ethereum transactions in PHP. web3p/ethereum-tx builds raw TX payloads for legacy and EIP-155 transactions, handling nonce, gas, to/value/data, and chain IDs—ideal for creating offline-signed transactions and broadcasting via any JSON-RPC provider.

View on GitHub
Deep Wiki
Context7

Ethereum transaction library in PHP.

Frequently asked questions about Ethereum Tx
Can I use web3p/ethereum-tx in Laravel to sign transactions offline before broadcasting?
Yes, the package is designed for offline signing. You can generate raw transaction payloads (legacy or EIP-155) in your Laravel backend, then broadcast them later via any JSON-RPC provider like Alchemy or Infura. This is ideal for security-sensitive applications where private keys never leave your server.
What Laravel versions does web3p/ethereum-tx support?
The package works with Laravel 6+ (PHP 7.4+) and is compatible with newer versions like Laravel 9. For Laravel 10, ensure PHP 8.1+ is used, as newer Laravel features may require additional wrapper logic. Always check the package’s PHP version requirements in its documentation.
How do I handle private key storage securely in Laravel with this package?
Never store private keys in plaintext. Use Laravel’s built-in encryption (config/app.php ‘key’) or integrate with a dedicated secrets manager like HashiCorp Vault or AWS Secrets Manager. For high-security use cases, consider hardware security modules (HSMs) or dedicated key management services.
Does web3p/ethereum-tx support EIP-1559 (dynamic fee transactions) for Ethereum?
No, the package currently does not support EIP-1559. It focuses on legacy and EIP-155 transactions. For EIP-1559, you may need to combine this package with a JavaScript library like Ethers.js for gas estimation or use a hybrid approach where this package handles signing while another service manages fee market logic.
How can I integrate this package with Laravel’s queue system for async transaction broadcasting?
Wrap the package in a Laravel service class and dispatch jobs to handle transaction broadcasting asynchronously. For example, create a `BroadcastEthereumTx` job that uses Guzzle to send the raw transaction to a JSON-RPC endpoint. Laravel’s queue workers (Redis or database) will process these jobs reliably, even if the request times out.
Are there any known security risks with phpseclib, which this package depends on?
Yes, phpseclib has had past vulnerabilities. Mitigate this by pinning to a specific version (e.g., `composer require phpseclib/phpseclib:3.0.19`) and regularly auditing dependencies. Alternatively, consider replacing it with `kornrunner/keccak` for cryptographic operations if security is a critical concern.
Can I use this package to interact with Ethereum testnets like Sepolia or Goerli?
Absolutely. The package itself is chain-agnostic—you only need to specify the correct chain ID (e.g., 11155111 for Sepolia) when constructing the transaction. Ensure your JSON-RPC provider (e.g., Alchemy or Infura) supports the testnet you’re targeting.
How do I handle failed transaction broadcasts in Laravel?
Implement Laravel’s retry mechanism in your service class. For example, use Guzzle’s retry middleware or wrap the broadcast logic in a `retry()` block. Log failed transactions with details (e.g., error code, timestamp) and consider adding a dead-letter queue for manual review of persistently failing transactions.
Is there a Laravel facade or service provider for this package, or do I need to DI manually?
The package does not include a Laravel facade or service provider. You’ll need to manually register it as a binding in `AppServiceProvider` or use Laravel’s container directly. Example: `app()->bind(EthereumTxService::class, function ($app) { return new EthereumTxService(); });`.
What alternatives exist if I need EIP-1559 support or a more Laravel-native package?
For EIP-1559 or tighter Laravel integration, consider forking this package and extending it (e.g., adding a Laravel facade or EIP-1559 support), or explore alternatives like `ethereumjs/tx` (JavaScript/Node.js) with a PHP-JS bridge, or a dedicated Laravel package like `spatie/ethereum-tx-laravel` if available. Evaluate trade-offs between flexibility and maintenance.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky