SAP S/4HANA / ECC Timesheets + Power BI Reporting
From validated TimeTrack hours to your Power BI reports
For IT services firms and SAP teams that must feed time data into reporting without endless double entry: capture and approve in TimeTrack, then export files or call the API into Power BI.
What TimeTrack actually supports
Only capabilities present in the product today.
Validated billing export
Team file for Power BI. Managers and admins. GET /api/exports/billing?month=YYYY-MM&format=csv or json. Validated rows only, soft-deleted excluded, one calendar month. Optional projectId. CSV columns: Date, Consultant, Email, Projet, Client, Heures, Jours (hours/8) plus TOTAL. No description. The /exports screen lists the last 3 months; the endpoint accepts any YYYY-MM.
CSV export pageMonth close and personal export
Month close (Excel or PDF) is the locked-month snapshot of every non-deleted status, not the validated-only file. Personal GET /api/exports/timesheets is the signed-in user only, every status, including soft-deleted rows. It is not the team extract.
REST API v1
Bearer ttk_ keys under Settings → Integrations. GET /api/v1/timesheets (read:timesheets) returns at most 500 rows per page, with nextCursor, clientName, and description. Soft-deleted rows are omitted. OpenAPI at /api/v1/openapi. 120 requests/minute/key, in memory per server instance.
Power BI via file or API
Import the billing CSV or JSON in Power BI (Get Data → Text/CSV), or page the API from Power Query with a Bearer header. No certified Microsoft TimeTrack connector.
Step-by-step flow
From SAP / consulting operations to a Power BI report — no invented connectors.
Capture and approve time in TimeTrack
Consultants enter time; managers approve. That validated set is your operational source of truth before reporting.
Align project labels with your SAP codes
If you report by WBS, put the WBS code (or a stable convention) in the TimeTrack project name/reference. TimeTrack does not push to CATS automatically.
Download the billing file, or page the API
Managers and admins: /exports, or GET /api/exports/billing?month=YYYY-MM&format=csv|json. That file is validated company time for one calendar month. Or call GET /api/v1/timesheets?from=…&to=…&validated=true&limit=500 with Authorization: Bearer ttk_… and follow nextCursor. Do not use the personal dashboard export for the team report.
Load into Power BI
Power BI Desktop: Get Data → Text/CSV for the billing CSV, or a Web source that follows nextCursor for the API. There is no Excel team extract of validated time only. Month-close Excel is a different file: every status, and only after the month is locked.
Optional: feed SAP
For CATS / PS injection, use your SAP middleware (CPI, PI/PO, script) from the CSV/JSON or TimeTrack API. See the SAP technical guide for WBS / CATS mapping.
Detailed SAP process guide (OData / RFC on the ERP side): Timesheet integration with SAP — 2026 guide. Exports: PDF / Excel, CSV. Product reporting: timesheet reporting.
Frequently asked questions
Does TimeTrack ship a native SAP S/4HANA or ECC connector?
No. TimeTrack has no native SAP connector (neither OData nor RFC) and no native Power BI connector. Managers and admins download the validated billing file (CSV or JSON) or page the REST API, then load that data with their own process.
How do I feed Power BI with TimeTrack timesheets?
The team file is the validated billing export, not the personal dashboard export. Managers and admins call GET /api/exports/billing?month=YYYY-MM&format=csv (or json), with an optional projectId. It returns the company's validated timesheets for that calendar month and omits soft-deleted rows. CSV columns are Date, Consultant, Email, Projet, Client, Heures, Jours (hours divided by 8, two decimals) plus a TOTAL row. JSON fields are date, consultant, consultantEmail, project, client, hours, days (hours/8, not rounded), validated, and validatedAt. There is no description column. The screen at /exports lists the last 3 months; the endpoint accepts any YYYY-MM. A second path is GET /api/v1/timesheets (scope read:timesheets): up to 500 rows per page, follow nextCursor, fields include clientName and description, soft-deleted rows omitted. There is no native Power BI connector.
Which timesheet export formats does TimeTrack support?
Personal dashboard export (GET /api/exports/timesheets) is the signed-in user only, every status, including soft-deleted rows. Formats: PDF (default), Excel, or CSV. CSV columns: date, project, client, hours, days (hours/8), description. Excel also has status. The screen /timesheet/export offers the last 3 months. Billing export is CSV or JSON for managers and admins (validated only). Month-close export is Excel or PDF after the month is locked, for managers and admins, every non-deleted status (draft, submitted, validated, rejected).
How do I align TimeTrack projects with SAP WBS codes for reporting?
TimeTrack does not auto-sync SAP WBS. In practice, name or reference TimeTrack projects with the SAP WBS code (or a stable internal convention), validate time, then export or read via API into Power BI / SAP. The SAP technical guide covers WBS / CATS mapping on the process side.
Can the TimeTrack API power BI / ERP reporting?
Yes, if you page through it. GET /api/v1/timesheets requires scope read:timesheets and a Bearer ttk_ key. Query from, to, validated=true or false, limit (1 to 500, default 500), and cursor. The response is { timesheets, nextCursor }. Soft-deleted rows are omitted. Each row has id, date (YYYY-MM-DD), hours, billable, submitted, validated, description, projectId, projectName, clientName, userId, userName, and userEmail, ordered by date descending then id descending. Follow nextCursor until it is null. The rate limit is 120 requests per minute per key, counted in memory on each server instance (Retry-After only; not a global ceiling). There is no v1 endpoint that validates a timesheet. GET /api/v1/projects returns at most 200 projects.
Ready to export to Power BI?
14-day free trial. Approve time, export CSV/Excel, or wire the API — without inventing a SAP connector.
14-day free trial