Create statement file for an account
curl --request POST \
--url https://{environment}.ebury.io/accounts/{account_id}/statements/file \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"from_value_datetime": "<string>",
"to_value_datetime": "<string>"
}
'import requests
url = "https://{environment}.ebury.io/accounts/{account_id}/statements/file"
payload = {
"from_value_datetime": "<string>",
"to_value_datetime": "<string>"
}
headers = {
"Authorization": "<authorization>",
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: '<authorization>',
'x-api-key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({from_value_datetime: '<string>', to_value_datetime: '<string>'})
};
fetch('https://{environment}.ebury.io/accounts/{account_id}/statements/file', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{environment}.ebury.io/accounts/{account_id}/statements/file",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'from_value_datetime' => '<string>',
'to_value_datetime' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{environment}.ebury.io/accounts/{account_id}/statements/file"
payload := strings.NewReader("{\n \"from_value_datetime\": \"<string>\",\n \"to_value_datetime\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{environment}.ebury.io/accounts/{account_id}/statements/file")
.header("Authorization", "<authorization>")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"from_value_datetime\": \"<string>\",\n \"to_value_datetime\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{environment}.ebury.io/accounts/{account_id}/statements/file")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"from_value_datetime\": \"<string>\",\n \"to_value_datetime\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"url": "<string>"
}{
"code": "<string>",
"details": "<string>",
"message": "<string>"
}{
"code": "<string>",
"details": "<string>",
"message": "<string>"
}{
"code": "<string>",
"details": "<string>",
"message": "<string>"
}Getting Statements
Create statement file for an account
POST
/
accounts
/
{account_id}
/
statements
/
file
Create statement file for an account
curl --request POST \
--url https://{environment}.ebury.io/accounts/{account_id}/statements/file \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"from_value_datetime": "<string>",
"to_value_datetime": "<string>"
}
'import requests
url = "https://{environment}.ebury.io/accounts/{account_id}/statements/file"
payload = {
"from_value_datetime": "<string>",
"to_value_datetime": "<string>"
}
headers = {
"Authorization": "<authorization>",
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: '<authorization>',
'x-api-key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({from_value_datetime: '<string>', to_value_datetime: '<string>'})
};
fetch('https://{environment}.ebury.io/accounts/{account_id}/statements/file', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{environment}.ebury.io/accounts/{account_id}/statements/file",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'from_value_datetime' => '<string>',
'to_value_datetime' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{environment}.ebury.io/accounts/{account_id}/statements/file"
payload := strings.NewReader("{\n \"from_value_datetime\": \"<string>\",\n \"to_value_datetime\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{environment}.ebury.io/accounts/{account_id}/statements/file")
.header("Authorization", "<authorization>")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"from_value_datetime\": \"<string>\",\n \"to_value_datetime\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{environment}.ebury.io/accounts/{account_id}/statements/file")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"from_value_datetime\": \"<string>\",\n \"to_value_datetime\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"url": "<string>"
}{
"code": "<string>",
"details": "<string>",
"message": "<string>"
}{
"code": "<string>",
"details": "<string>",
"message": "<string>"
}{
"code": "<string>",
"details": "<string>",
"message": "<string>"
}Generate a statement asynchronously in
PDF, CSV or MT940 format for a given account.
It is not possible to generate statements for periods longer than 31 days.
In order to retrieve the generated statement go to Retrieve a statement for an account
Technical note: the input dates (and output file names) will be understood as of
Europe/London timezone.
This timezone can be GMT/WET (UTC+00:00), or BST/WEST (UTC+01:00) when DST is applied.
This occasional shift from UTC, during DST, prevents us to label these dates as being UTC.
If you are not sure if this warning applies to your scenario, ignore it.Authorizations
An API Key.
Path Parameters
Account UUID
Query Parameters
The ID of the client
The format of the statement to generate
Body
application/json
Request Payload
Only return transactions with value date after this date. Time ignored, considered always to be the start of the day. YYYY-MM-DDThh:mm format
Only return transactions with value date before this date. Time ignored, considered always to be the end of the day. YYYY-MM-DDThh:mm format
Response
Statement processing started
The url needed to retrieve the statement. It contains two UUID values, the first one (from the left) is the account id and the second one is the statement id.