Statistics

Invoices statistics

Aggregated statistics for the invoices and credit notes Shipmondo has issued to you -- your own spend with the platform.

This is the only statistics resource carrying net, VAT and gross amounts. Only closed documents are included (return-portal documents issued to an end consumer are excluded), so this answers what you have been billed, not what you are currently accruing. Monetary amounts are always expressed in the document's own currency and are never converted; requesting a money metric without restricting or grouping by currency_code groups the response by currency automatically and sets meta.currency_split to true.

Money metrics are marked approximate: see meta.approximate_metrics -- they are aggregated in 32-bit floating point and can differ from the exact decimal figures returned by other endpoints for the same underlying records.

get/statistics/invoices

Query parameters

date_fromstring date-time required

Start of the period, inclusive. A bare date such as 2026-07-01 is expanded to the beginning of that day in the requested time zone.

date_tostring date-time required

End of the period, inclusive. A bare date such as 2026-07-31 is expanded to the end of that day in the requested time zone.

date_field'created_at' | 'updated_at'

Which timestamp the period applies to. Defaults to created_at.

time_zonestring

IANA time zone used to interpret bare dates and to place time series buckets. Defaults to Europe/Copenhagen.

interval'hour' | 'day' | 'week' | 'month'

Adds a time series to the response. Maximum period per interval: hour 7 days, day 366 days, week 732 days, month 732 days.

group_bystring

Comma separated list of at most 2 dimensions. The second dimension is nested inside the first.

metricsstring

Comma separated list of metrics. Defaults to count.

limitinteger

Number of buckets per group level. Some high cardinality dimensions cap this lower.

sortstring

Bucket ordering. Prefix with - for descending. Accepts key or any metric.

series_per_groupboolean

Place a time series inside every group as well as at the top level, answering questions like shipments per carrier per day in one request. Requires both interval and group_by, and is not available when the innermost dimension groups line level documents, which carry no timestamp of their own. Multiplies the number of buckets, so it counts heavily against the request limits.

include_empty_bucketsboolean

Zero fill the time series across the whole period. Off by default, so periods with no data are omitted.

reference_type'shipment' | 'payment_request' | 'payment_requests' | 'generic_payment' | 'generic_payments' | 'sales_header' | 'subscription_period' | 'shipment_case'

Restrict the period to matching records. Accepts a comma separated list.

document_type'invoice' | 'credit_note'

Restrict the period to matching records. Accepts a comma separated list.

currency_codestring

Restrict the period to matching records. Accepts a comma separated list.

vat_business_type'business' | 'private_person'

Restrict the period to matching records. Accepts a comma separated list.

bill_to_country_codestring

Restrict the period to matching records. Accepts a comma separated list.

vat_percentstring

Restrict the period to matching records. Accepts a comma separated list.

local_currency_codestring

Restrict the period to matching records. Accepts a comma separated list.

Response

Successful.

totalsobject

The requested metrics across the whole period, before any grouping.

Example response

{
  "meta": {
    "resource": "shipments",
    "date_field": "created_at",
    "time_zone": "Europe/Copenhagen",
    "interval": "day",
    "limit": 25,
    "sort": "-count"
  },
  "series": [
    {
      "key": "2026-07-01"
    }
  ],
  "groups": [
    {
      "key": "gls",
      "label": "GLS",
      "series": [
        {
          "key": "2026-07-01"
        }
      ]
    }
  ]
}

Changes

Changed in 1 of the 11 revisions of this API.1