PHPackages                             itsoft/revolut - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. itsoft/revolut

ActiveLibrary[API Development](/categories/api)

itsoft/revolut
==============

Revolut API in one php-class in one file without any dependencies.

v1.1.0(5y ago)5978↓93.8%1MITPHPPHP &gt;=5.4.0

Since Jan 11Pushed 5y ago2 watchersCompare

[ Source](https://github.com/itsoft7/revolut-php)[ Packagist](https://packagist.org/packages/itsoft/revolut)[ Docs](https://github.com/itsoft7/revolut-php/)[ RSS](/packages/itsoft-revolut/feed)WikiDiscussions master Synced today

READMEChangelog (2)DependenciesVersions (5)Used By (0)

revolut-php
===========

[](#revolut-php)

simple PHP library for the [Revolut Business API](https://developer.revolut.com/docs/manage-accounts/#get-started)

[![Build](https://github.com/itsoft7/revolut-php/actions/workflows/php.yml/badge.svg)](https://github.com/itsoft7/revolut-php/actions/workflows/php.yml)

🚀 Features
----------

[](#rocket-features)

- One file
- No external dependencies
- Support for older versions of PHP

💡 Motivation
------------

[](#bulb-motivation)

Revolut API has the following bugs:

- Scope is not supported. E.g. you cannot give read-only access to your Revolut application. It's a shame.
- No possibility to revoke the token. Again it's a shame. You can ask for a new token (refresh token) and not save it, but it's a kludge.
- No possibility to add a second account (IBAN) to a counterparty. Delete and create is a bad solution due to old payments are linked to the counterparty uuid. We can add several counterparties with different IBANs, and get into a mess while distinguishing between 2 different companies with the same name.
- It's very bad there's no MFA when sending payments via the API. We need a second independent channel to confirm (sign) payments. It can be SMS or TOTP.

Revolut API is very unsafe.

[Revolut Business API Documentation](https://developer.revolut.com/docs/manage-accounts/#introduction-to-the-business-api).

🍭 Demo
------

[](#lollipop-demo)

You can find a demo app using this library here:

✅ Installation
--------------

[](#white_check_mark-installation)

```
composer require itsoft/revolut
```

🎱 Usage
-------

[](#8ball-usage)

```
cd your_secret_keys_dir/revolut
openssl genrsa -out privatekey.pem 1024
openssl req -new -x509 -key privatekey.pem -out publickey.cer -days 1825
more publickey.cer
```

Add the contents of publickey.cer to [Revolut Business API settings page](https://business.revolut.com/settings/api) and point your OAuth redirect URI. Save ClientId and Enable API access to your account.

### Create insecure revolut.cfg.php

[](#create-insecure-revolutcfgphp)

This config saves tokens in files. You can save them to a database or other places, but for security reasons better not to save them, see the next section Secured revolut.cfg.php.

```
