rigolt91/mercury-laravel

A Laravel package for integrating with Mercury API

Maintainers

Package info

github.com/rigolt91/mercury

pkg:composer/rigolt91/mercury-laravel

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.0 2025-12-23 18:36 UTC

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 cuentas
  • find($accountId) - Obtener una cuenta específica
  • cards($accountId) - Obtener tarjetas de una cuenta
  • statements($accountId) - Obtener estados de cuenta
  • transactions($accountId, $params) - Obtener transacciones
  • createTransaction($accountId, $data) - Crear transacción
  • createInternalTransfer($data) - Crear transferencia interna
  • requestSendMoney($accountId, $data) - Solicitar envío de dinero

Transactions

  • all($params) - Obtener todas las transacciones
  • find($transactionId) - Obtener una transacción específica
  • updateMetadata($transactionId, $metadata) - Actualizar metadatos

Recipients

  • all() - Obtener todos los destinatarios
  • find($recipientId) - Obtener un destinatario específico
  • create($data) - Crear un destinatario
  • update($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