rigolt91 / mercury-laravel
A Laravel package for integrating with Mercury API
v1.0.0
2025-12-23 18:36 UTC
Requires
- php: ^8.0
- illuminate/http: ^9.0|^10.0|^11.0
- illuminate/support: ^9.0|^10.0|^11.0
Requires (Dev)
- orchestra/testbench: ^7.0|^8.0|^9.0
- phpunit/phpunit: ^9.0|^10.0|^11.0
This package is auto-updated.
Last update: 2026-03-23 19:20:12 UTC
README
Un paquete de Laravel para integrar con la API de Mercury.
Instalación
composer require rigolt91/mercury-laravel
Configuración
Publica el archivo de configuración:
php artisan vendor:publish --tag=mercury-config
Agrega tus credenciales en el archivo .env:
MERCURY_API_KEY=tu_api_key MERCURY_BASE_URL=https://api.mercury.com
Uso
Usando el Facade
use Rigolt91\MercuryLaravel\Facades\Mercury; // Obtener todas las cuentas $accounts = Mercury::accounts()->all(); // Obtener una cuenta específica $account = Mercury::accounts()->find('account_id'); // Obtener transacciones de una cuenta $transactions = Mercury::accounts()->transactions('account_id'); // Crear una transacción $transaction = Mercury::accounts()->createTransaction('account_id', [ 'amount' => 100.00, 'counterpartyId' => 'counterparty_id', 'description' => 'Payment for services' ]);
Usando inyección de dependencias
use Rigolt91\MercuryLaravel\MercuryClient; class YourController extends Controller { public function __construct(private MercuryClient $mercury) { // ... } public function getAccounts() { return $this->mercury->accounts()->all(); } }
Recursos disponibles
Accounts
all()- Obtener todas las cuentasfind($accountId)- Obtener una cuenta específicacards($accountId)- Obtener tarjetas de una cuentastatements($accountId)- Obtener estados de cuentatransactions($accountId, $params)- Obtener transaccionescreateTransaction($accountId, $data)- Crear transaccióncreateInternalTransfer($data)- Crear transferencia internarequestSendMoney($accountId, $data)- Solicitar envío de dinero
Transactions
all($params)- Obtener todas las transaccionesfind($transactionId)- Obtener una transacción específicaupdateMetadata($transactionId, $metadata)- Actualizar metadatos
Recipients
all()- Obtener todos los destinatariosfind($recipientId)- Obtener un destinatario específicocreate($data)- Crear un destinatarioupdate($recipientId, $data)- Actualizar un destinatario
Organization
get()- Obtener información de la organización
Manejo de errores
El paquete lanza excepciones cuando la API responde con errores:
use Rigolt91\MercuryLaravel\Exceptions\MercuryException; try { $account = Mercury::accounts()->find('invalid_id'); } catch (MercuryException $e) { echo $e->getMessage(); echo $e->getCode(); print_r($e->getResponse()); }
Pruebas
composer test