Skip to main content
GET
/
billing
/
items
/
{period}
/
{chargeType}
curl --request GET \
  --url "https://v1-api.ticket-plus.app/billing/items/2024-05-01/ticket-charge" \
  --header "Authorization: Basic <base64(clientId:clientSecret)>"
import requests, base64

credentials = base64.b64encode(b"<clientId>:<clientSecret>").decode()

res = requests.get(
    "https://v1-api.ticket-plus.app/billing/items/2024-05-01/ticket-charge",
    headers={"Authorization": f"Basic {credentials}"},
)
print(res.json())
const credentials = Buffer.from("<clientId>:<clientSecret>").toString("base64");

const res = await fetch(
  "https://v1-api.ticket-plus.app/billing/items/2024-05-01/ticket-charge",
  { headers: { Authorization: `Basic ${credentials}` } }
);
console.log(await res.json());
{
  "data": [
    {
      "id": 1024,
      "billing": {
        "period": "2024-05-01",
        "total": { "label": "€29.00", "value": 2900 },
        "tax": { "label": "€5.51", "value": 551 },
        "overall": { "label": "€34.51", "value": 3451 }
      },
      "charge": {
        "type": "ticket-charge",
        "employee": {
          "profile": {
            "id": 42,
            "firstName": "Anna",
            "lastName": "Müller",
            "email": "[email protected]",
            "hrId": "emp_HR_001"
          },
          "exists": true
        },
        "plan": {
          "type": "split-pay-plan",
          "companyAmount": { "label": "€20.00", "value": 2000 },
          "employeeAmount": { "label": "€9.00", "value": 900 }
        }
      },
      "billedAt": "2024-05-01T00:00:00Z",
      "resource": "billing-item",
      "_links": {
        "self": { "href": "https://v1-api.ticket-plus.app/billing/items/1024", "type": "application/json" },
        "employee": { "href": "https://v1-api.ticket-plus.app/employees/42", "type": "application/json" }
      }
    }
  ]
}
Returns all billing items for one billing period and one charge type in a single, non-paginated response. This is the fastest way to pull a complete month of charges in one call. To build payroll data, export a month’s ticket-charge items — you get one entry per employee who received a ticket, each with the employee’s hrId, the price, and the billing period.
This endpoint requires the view-billing permission. See Authorization.
Unlike List Billing Items, this endpoint is not paginated — it returns the full result set for the period and charge type at once.
curl --request GET \
  --url "https://v1-api.ticket-plus.app/billing/items/2024-05-01/ticket-charge" \
  --header "Authorization: Basic <base64(clientId:clientSecret)>"
import requests, base64

credentials = base64.b64encode(b"<clientId>:<clientSecret>").decode()

res = requests.get(
    "https://v1-api.ticket-plus.app/billing/items/2024-05-01/ticket-charge",
    headers={"Authorization": f"Basic {credentials}"},
)
print(res.json())
const credentials = Buffer.from("<clientId>:<clientSecret>").toString("base64");

const res = await fetch(
  "https://v1-api.ticket-plus.app/billing/items/2024-05-01/ticket-charge",
  { headers: { Authorization: `Basic ${credentials}` } }
);
console.log(await res.json());
{
  "data": [
    {
      "id": 1024,
      "billing": {
        "period": "2024-05-01",
        "total": { "label": "€29.00", "value": 2900 },
        "tax": { "label": "€5.51", "value": 551 },
        "overall": { "label": "€34.51", "value": 3451 }
      },
      "charge": {
        "type": "ticket-charge",
        "employee": {
          "profile": {
            "id": 42,
            "firstName": "Anna",
            "lastName": "Müller",
            "email": "[email protected]",
            "hrId": "emp_HR_001"
          },
          "exists": true
        },
        "plan": {
          "type": "split-pay-plan",
          "companyAmount": { "label": "€20.00", "value": 2000 },
          "employeeAmount": { "label": "€9.00", "value": 900 }
        }
      },
      "billedAt": "2024-05-01T00:00:00Z",
      "resource": "billing-item",
      "_links": {
        "self": { "href": "https://v1-api.ticket-plus.app/billing/items/1024", "type": "application/json" },
        "employee": { "href": "https://v1-api.ticket-plus.app/employees/42", "type": "application/json" }
      }
    }
  ]
}

Path Parameters

period
string
required
The billing period to export, in YYYY-MM-DD format — the first day of the billed month, e.g. 2024-05-01.
chargeType
string
required
The charge type to export. Allowed values: service-charge, ticket-charge, hr-integration-charge, hr-payroll-integration-charge, api-charge. Use ticket-charge to export the per-employee ticket charges for payroll.

Response

data
object[]
required
Array of billing item objects for the requested period and charge type. Returned in full — this response is not paginated.

Authorizations

Authorization
string
header
required

HTTP Basic Auth using your API key credentials. Use the username and password issued from the Developer Portal. Encode them as Base64(username:password) and pass in the Authorization: Basic <token> header.

Path Parameters

period
string
required

The billing period to export, in YYYY-MM-DD format (the first day of the billed month, e.g. 2024-05-01).

chargeType
enum<string>
required

The charge type to export. Allowed values: service-charge, ticket-charge, hr-integration-charge, hr-payroll-integration-charge, api-charge.

Available options:
service-charge,
ticket-charge,
hr-integration-charge,
hr-payroll-integration-charge,
api-charge

Response

200 - application/json

All billing items for the given period and charge type.

data
object[]
required