LaravelPackages.net
Acme Inc.
Toggle sidebar
sashalenz/monobank-api

This is my package monobank-api

226
0
2.1.0
About sashalenz/monobank-api

sashalenz/monobank-api is a Laravel package for this is my package monobank-api. It currently has 0 GitHub stars and 226 downloads on Packagist (latest version 2.1.0). Install it with composer require sashalenz/monobank-api. Discover more Laravel packages by sashalenz or browse all Laravel packages to compare alternatives.

Last updated

Monobank API client for PHP

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

A lightweight and expressive PHP wrapper for the Monobank API. It provides simple methods for accessing public banking information and personal account data.

Installation

You can install the package via composer:

composer require sashalenz/monobank-api

You can publish the config file with:

php artisan vendor:publish --tag="monobank-api-config"

This is the contents of the published config file:

return [
];

Usage

This package provides helpers for all Monobank API requests:

  • MonobankApi::bank()->currency() – get current currency exchange rates.
  • MonobankApi::personal()->clientInfo() – retrieve information about accounts and cards.
  • MonobankApi::personal()->webhook($url) – register a webhook URL for transaction updates.
  • MonobankApi::personal()->statement($account, $dateFrom, $dateTo = null) – fetch a statement for a specific account and period.

Examples

Currency rates

Retrieve public exchange rates without authentication.

use Sashalenz\MonobankApi\MonobankApi;

$rates = MonobankApi::bank()->currency();

foreach ($rates as $rate) {
    echo $rate->currencyCodeA . ' => ' . $rate->rateBuy . PHP_EOL;
}

Client information

Get information about your accounts and cards.

$info = MonobankApi::personal()->token($token)->clientInfo();

Register webhook

Configure a webhook to receive transaction updates.

MonobankApi::personal()->token($token)->webhook('https://example.com/monobank');

Webhook route configuration

The package registers two inbound webhook routes (POST {prefix}/{webhook_key} and POST {prefix}/{acquiring_webhook_key}). Where and how they mount is fully configurable (Livewire-style) — set these in config/monobank-api.php or via env:

| Config / env | Default | Purpose | | --- | --- | --- | | webhook_routes_enabled / MONOBANK_WEBHOOK_ROUTES_ENABLED | true | Set false to skip route registration entirely (e.g. when you handle the webhook elsewhere). | | webhook_domain / MONOBANK_WEBHOOK_DOMAIN | null (any host) | Constrain the routes to a domain. | | webhook_prefix / MONOBANK_WEBHOOK_PREFIX | monobank-api | URL path prefix. | | webhook_middleware / MONOBANK_WEBHOOK_MIDDLEWARE | [] | Middleware/guards (env = comma-separated list). | | webhook_key / acquiring_webhook_key | webhook / acquiring-webhook | Path segment per controller. |

All defaults preserve the previous behaviour.

Account statement

Fetch the statement for an account within a given period.

$statement = MonobankApi::personal()
    ->token($token)
    ->statement($accountId, $dateFrom, $dateTo);

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.

Star History Chart