curl --request GET \
--url https://coreapi.io/api/analytics/finance/overview \
--header 'Authorization: Bearer <token>'import requests
url = "https://coreapi.io/api/analytics/finance/overview"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://coreapi.io/api/analytics/finance/overview', 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://coreapi.io/api/analytics/finance/overview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"months": [
"<string>"
],
"cashflow": {
"collected": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refunded": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"net": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"totals": {},
"forecastBilled": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedThisMonth": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedOtherMonths": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedUnassigned": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refundedRefund": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refundedChargeback": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refundedPayout": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedRefundReturned": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"corrections": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"correctionsReversed": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"correctionsCounter": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"correctionCount": [
123
],
"refundedReturnFee": [
{
"amount": "1234.56",
"currency": "EUR"
}
]
},
"mrrMovements": {
"new": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"expansion": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"contraction": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"lost": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"resurrecting": [
{
"amount": "1234.56",
"currency": "EUR"
}
]
},
"revenueBreakdown": {
"recurring": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"oneOff": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"variable": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"total": [
{
"amount": "1234.56",
"currency": "EUR"
}
]
},
"receivablesTrend": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"receivablesTrendOverdue": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"ageing": {
"asOf": "2023-11-07T05:31:56Z",
"total": {
"amount": "1234.56",
"currency": "EUR"
},
"overdueTotal": {
"amount": "1234.56",
"currency": "EUR"
},
"buckets": [
{
"key": "not_due",
"amount": {
"amount": "1234.56",
"currency": "EUR"
},
"invoiceCount": 123,
"topCustomers": [
{
"customer": {
"id": "<string>",
"number": "<string>",
"name": "<string>"
},
"amount": {
"amount": "1234.56",
"currency": "EUR"
},
"invoiceCount": 123
}
]
}
],
"over365": {
"amount": "1234.56",
"currency": "EUR"
}
},
"receivablesTable": {
"rows": {},
"totals": {},
"forecastInvoiceCount": [
123
]
},
"totals": {},
"meta": {
"asOf": "2023-11-07T05:31:56Z",
"buildId": "<string>",
"scope": "invoice_address",
"currency": "EUR",
"from": "2025-10",
"to": "2026-09",
"findings": {
"error": 0,
"warning": 3,
"info": 12
},
"filtersNotApplied": [
"<string>"
],
"notSnapshotted": [
"one_off",
"accounted_mrr",
"cash_collected"
],
"projectedFrom": "2026-10",
"forecast": {
"incomplete": false,
"failedSubscriptions": 0
},
"build": {
"status": "failed",
"builtAt": "2023-11-07T05:31:56Z",
"buildId": "<string>",
"failed": {
"invariants": [
"CASH_WITHIN_DOCUMENT"
],
"rowCount": 5,
"invoiceRowCount": 5
}
},
"dataBuildId": "<string>"
}
}{
"status": 409,
"type": "ANALYTICS_MRR_FINANCIALS__SNAPSHOT_MONTH_NOT_ENDED",
"title": "An error occurred",
"detail": "<string>"
}{
"status": 422,
"type": "https://tools.ietf.org/html/rfc2616#section-10",
"violations": [
{
"propertyPath": "to",
"message": "Der Zeitraum darf höchstens 36 Monate umfassen.",
"code": "analytics.mrr_financials.range_too_long"
}
],
"title": "Validation Failed",
"detail": "<string>"
}Finance overview datasets
Cash flow (collected counts settled payments with status captured, booked, refunded or partial_refunded, by payment date), MRR movements (signed), billed net revenue by class (net = gross − tax after position discounts, credit notes negative), outstanding receivables at each month end, ageing of the invoices open today, and the receivables table. One currency, never converted. Cash and receivables have no product dimension: a product filter does not narrow them (meta.filtersNotApplied).
Required permission: analytics:read.
curl --request GET \
--url https://coreapi.io/api/analytics/finance/overview \
--header 'Authorization: Bearer <token>'import requests
url = "https://coreapi.io/api/analytics/finance/overview"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://coreapi.io/api/analytics/finance/overview', 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://coreapi.io/api/analytics/finance/overview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}{
"months": [
"<string>"
],
"cashflow": {
"collected": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refunded": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"net": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"totals": {},
"forecastBilled": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedThisMonth": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedOtherMonths": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedUnassigned": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refundedRefund": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refundedChargeback": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"refundedPayout": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"collectedRefundReturned": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"corrections": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"correctionsReversed": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"correctionsCounter": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"correctionCount": [
123
],
"refundedReturnFee": [
{
"amount": "1234.56",
"currency": "EUR"
}
]
},
"mrrMovements": {
"new": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"expansion": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"contraction": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"lost": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"resurrecting": [
{
"amount": "1234.56",
"currency": "EUR"
}
]
},
"revenueBreakdown": {
"recurring": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"oneOff": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"variable": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"total": [
{
"amount": "1234.56",
"currency": "EUR"
}
]
},
"receivablesTrend": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"receivablesTrendOverdue": [
{
"amount": "1234.56",
"currency": "EUR"
}
],
"ageing": {
"asOf": "2023-11-07T05:31:56Z",
"total": {
"amount": "1234.56",
"currency": "EUR"
},
"overdueTotal": {
"amount": "1234.56",
"currency": "EUR"
},
"buckets": [
{
"key": "not_due",
"amount": {
"amount": "1234.56",
"currency": "EUR"
},
"invoiceCount": 123,
"topCustomers": [
{
"customer": {
"id": "<string>",
"number": "<string>",
"name": "<string>"
},
"amount": {
"amount": "1234.56",
"currency": "EUR"
},
"invoiceCount": 123
}
]
}
],
"over365": {
"amount": "1234.56",
"currency": "EUR"
}
},
"receivablesTable": {
"rows": {},
"totals": {},
"forecastInvoiceCount": [
123
]
},
"totals": {},
"meta": {
"asOf": "2023-11-07T05:31:56Z",
"buildId": "<string>",
"scope": "invoice_address",
"currency": "EUR",
"from": "2025-10",
"to": "2026-09",
"findings": {
"error": 0,
"warning": 3,
"info": 12
},
"filtersNotApplied": [
"<string>"
],
"notSnapshotted": [
"one_off",
"accounted_mrr",
"cash_collected"
],
"projectedFrom": "2026-10",
"forecast": {
"incomplete": false,
"failedSubscriptions": 0
},
"build": {
"status": "failed",
"builtAt": "2023-11-07T05:31:56Z",
"buildId": "<string>",
"failed": {
"invariants": [
"CASH_WITHIN_DOCUMENT"
],
"rowCount": 5,
"invoiceRowCount": 5
}
},
"dataBuildId": "<string>"
}
}{
"status": 409,
"type": "ANALYTICS_MRR_FINANCIALS__SNAPSHOT_MONTH_NOT_ENDED",
"title": "An error occurred",
"detail": "<string>"
}{
"status": 422,
"type": "https://tools.ietf.org/html/rfc2616#section-10",
"violations": [
{
"propertyPath": "to",
"message": "Der Zeitraum darf höchstens 36 Monate umfassen.",
"code": "analytics.mrr_financials.range_too_long"
}
],
"title": "Validation Failed",
"detail": "<string>"
}Autorisierungen
API token of the organisation. Send it as Authorization: Bearer api_... The token is bound to exactly one organisation.
Abfrageparameter
First month (YYYY-MM, time zone of the organisation). Default: to minus 11 months.
Last month (YYYY-MM). Default: the current month. At most 36 months.
ISO-4217 code. Default: the default currency.
Movement scope of mrrMovements. Default: the organisation setting.
subscription, invoice_address, customer, organisation Analytics segment filter.
Customer filter.
Product filter (MRR movements and revenue).
Antwort
The datasets.
Datasets of the finance overview: cash flow, MRR movements, revenue by class, receivables at each month end, ageing of open invoices today, and the receivables table. Every series is aligned with months.
Months of the range (YYYY-MM, time zone of the organisation), ascending.
Collected, refunded and net cash per month (by payment date; null after the current month) and the invoice forecast ("Rechnungsprognose", gross by invoice month; null before the current month). Collected counts settled payments (status captured, booked, refunded, partial_refunded).
Show child attributes
Show child attributes
MRR movements per month, signed: contraction and lost are negative.
Show child attributes
Show child attributes
Billed net revenue per month by class (net = gross − tax, after position discounts; credit notes negative).
Show child attributes
Show child attributes
Outstanding receivables at each month end. Months after the current one carry the invoices open today forward (no payment assumed).
Show child attributes
Show child attributes
Part of receivablesTrend overdue at each month end (due date before the last day of the month); the rest is not yet due.
Show child attributes
Show child attributes
Open invoices today by days past due.
Show child attributes
Show child attributes
Receivables table: per invoice month the billed amounts, the status of those invoices today, cash in and out, and the outstanding amount at the month end.
Show child attributes
Show child attributes
Totals over the range: cash_collected, cash_refunded, cash_net (elapsed and current months), cash_forecast (invoice forecast, gross, current and later months), recurring, one_off, variable, revenue_total, new, expansion, contraction, lost, resurrecting (contraction and lost negative).
Show child attributes
Show child attributes
Calculation time, effective scope and currency, finding counts, datasets that ignore the filter.
Show child attributes
Show child attributes
War diese Seite hilfreich?