Built from the ground up, the Modulr API was one of the first REST APIs to launch in banking. It’s powerful, secure and easy to use.
curl --request POST \
--url https://api-sandbox.modulrfinance.com/api-sandbox-token/payments \
--header 'accept: application/json' \
--header 'authorization: <API KEY>' \
--header 'content-type: application/json;charset=UTF-8' \
--data '{"amount":10,"destination":{"accountNumber":"12445678","name":"My beneficiary","sortCode":"000000","type":"SCAN"},"reference":"My payment","sourceAccountId":"<YOUR ACCOUNT ID>"}'
var request = require("request");
var options = {
method: 'POST',
url: 'https://api-sandbox.modulrfinance.com/api-sandbox-token/payments',
headers: {
accept: 'application/json',
'content-type': 'application/json;charset=UTF-8',
authorization: '<API KEY>'
},
body: '{"amount":10,"destination":{"accountNumber":"12445678","name":"My beneficiary","sortCode":"000000","type":"SCAN"},"reference":"My payment","sourceAccountId":"<YOUR ACCOUNT ID>"}'
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
import requests
url = "https://api-sandbox.modulrfinance.com/api-sandbox-token/payments"
payload = "{\"amount\":10,\"destination\":{\"accountNumber\":\"12445678\",\"name\":\"My beneficiary\",\"sortCode\":\"000000\",\"type\":\"SCAN\"},\"reference\":\"My payment\",\"sourceAccountId\":\"<YOUR ACCOUNT ID>\"}"
headers = {
'accept': "application/json",
'content-type': "application/json;charset=UTF-8",
'authorization': "<API KEY>"
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
curl --request POST \
--url https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1223454/cards \
--header 'accept: application/json;charset=UTF-8' \
--header 'authorization: <API_KEY>' \
--header 'content-type: application/json;charset=UTF-8' \
--data '{"expiry":"2021-01-02","externalRef":"External reference","holder":{"firstName":"John","lastName":"Smith","title":"Mr"},"limit":34,"productCode":"01112345"}'
var request = require("request");
var options = {
method: 'POST',
url: 'https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1223454/cards',
headers: {
accept: 'application/json;charset=UTF-8',
'content-type': 'application/json;charset=UTF-8',
authorization: '<API_KEY>'
},
body: '{"expiry":"2021-01-02","externalRef":"External reference","holder":{"firstName":"John","lastName":"Smith","title":"Mr"},"limit":34,"productCode":"01112345"}'
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
import requests
url = "https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1223454/cards"
payload = "{\"expiry\":\"2021-01-02\",\"externalRef\":\"External reference\",\"holder\":{\"firstName\":\"John\",\"lastName\":\"Smith\",\"title\":\"Mr\"},\"limit\":34,\"productCode\":\"01112345\"}"
headers = {
'accept': "application/json;charset=UTF-8",
'content-type': "application/json;charset=UTF-8",
'authorization': "<API_KEY>"
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)
curl --request GET \
--url https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1234322 \
--header 'accept: application/json' \
--header 'authorization: <API_KEY>'
var request = require("request");
var options = {
method: 'GET',
url: 'https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1234322',
headers: {
accept: 'application/json',
authorization: '<API_KEY>'
}
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
import requests
url = "https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1234322"
headers = {
'accept': "application/json",
'authorization': "<API_KEY>"
}
response = requests.request("GET", url, headers=headers)
print(response.text)
curl --request GET \
--url 'https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1234567/transactions?page=0&size=20&q=ABC&minAmount=1&maxAmount=100' \
--header 'accept: application/json' \
--header 'authorization: <API_KEY>'
var request = require("request");
var options = {
method: 'GET',
url: 'https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1234567/transactions',
qs: {
page: '0',
size: '20',
q: 'ABC',
minAmount: '1',
maxAmount: '100'
},
headers: {
accept: 'application/json',
authorization: '<API_KEY>'
}
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
import requests
url = "https://api-sandbox.modulrfinance.com/api-sandbox-token/accounts/A1234567/transactions"
querystring = {"page":"0","size":"20","q":"ABC","minAmount":"1","maxAmount":"100"}
headers = {
'accept': "application/json",
'authorization': "<API_KEY>"
}
response = requests.request("GET", url, headers=headers, params=querystring)
print(response.text)
Our REST API uses JSON based resource-oriented URLs. It’s predictable and comes with Swagger based API documentation for ease of integration. As well as a full sandbox environment for testing.
All our services are built API-first, so there’s nothing you can’t access. Start using accounts within seconds. Use rules to automate complex flows. Receive webhook payment notifications.
Our API was purpose-built from ground up. It’s secured with TLS 1.2 and SHA-1 HMAC. And regularly enhanced with new payment features, while remaining backwardly compatible.
"Modulr’s API is a scalable, automated way of paying people, which allows us to be cost efficient, otherwise we’d need a much larger finance team. We didn’t want to employ a team of three to five people to do this."
Adrian Murdock Co-founder"Quite simply, Modulr offered a great solution for our business needs. Where we were faced with complexity, which would have slowed development, Modulr has brought us simplicity, clarity, speed to market and great service"
Tim Philip Chief Operating Officer