CabsOn Service

Corporate Taxi Audit Log for Compliance-Ready Bookings

Every ride, cancellation, and admin action recorded with the user who made it and the exact timestamp — downloadable in CSV or PDF when your auditors ask.

Book Your Journey

Instant fixed-fare quotes for taxis and airport transfers across the UK.

A corporate taxi audit log is a tamper-resistant record of every booking, cancellation, and administrative action taken inside your CabsOn business account — each entry stamped with the user who performed it, the exact time in UTC, and the specific change made. We generate one automatically the moment your organisation is activated, and every ride your team books from that point onward is captured to it. For finance leads reconciling monthly invoices, HR teams investigating expense disputes, and compliance officers preparing for a SOX walk-through or ISO 27001 review, this means you never need to reconstruct history from email threads. The full log is downloadable from your admin portal as CSV or PDF, filterable by date range, user, department, or event type. Retention follows the guidance issued by the Information Commissioner's Office — seven years by default for financial records to align with HMRC requirements, with the right to erase personal identifiers of former employees on request while preserving the anonymised transaction trail your accounts team still needs. We built this because the corporate travel bookers, hotel concierge managers, and recruitment agencies we work with kept asking the same question: when something goes wrong with a booking six weeks ago, can you tell us who authorised it? The answer is now yes — with the receipt, the driver, the pickup coordinates, the cancelling user, and the approval chain all in one place. This page explains what we log, how long we keep it, how it maps to UK regulatory obligations such as GDPR and Companies Act record-keeping, and how to pull the specific reports your external auditors typically ask for.
## What actions does the CabsOn audit log capture? We record every event that changes the state of a booking or a corporate account setting. That includes booking creation — who requested the ride, on behalf of which traveller, from which department budget, and the original quoted fare. It includes booking amendment — pickup change, destination change, passenger added, notes updated — with both the previous and the new values captured in the same row. Cancellations are logged with the cancelling user, the exact timestamp, the refund status, and whether the cancellation fell inside or outside our cancellation grace window. Driver assignment and reassignment — the dispatch decisions your traveller may never see — are captured for later dispute resolution. Payment events cover card charges, invoices raised, refunds issued, and any chargebacks opened, with the Revolut or Stripe reference number where applicable. On the account side, we log user administration — staff added or removed, role changed between traveller, approver, admin, or finance, and SSO group syncs from Google Workspace or Microsoft Entra. Approval workflow decisions record the approver's name, the decision taken, the rationale entered, and the budget cap that triggered the approval requirement in the first place. API key creation, rotation, and revocation are captured, as are admin login events including failed attempts and SSO handshakes. Each entry is written to an append-only table in our database. Administrators can view the log but cannot edit or delete entries — even a Corporate Owner cannot rewrite history from the portal. ## How is the audit trail protected against tampering? Every audit row is written inside the same database transaction that commits the underlying change. If the booking cancellation succeeds, the log entry succeeds; if either fails, both roll back. This gives you a guarantee that your log cannot be silently missing a real event that actually occurred. The table itself is append-only at the application layer — none of our controllers accept an UPDATE or DELETE against audit rows. At the database level, we keep rolling backups with point-in-time recovery, so even a hypothetical direct database write would be detectable against the backup lineage during a forensic review. We do not currently sign audit rows with cryptographic hashes, which is a common ask from banking-sector customers who need evidential-grade audit logs where each row's hash includes the previous row's hash. If that is a hard requirement for your compliance framework, please raise it with us before onboarding — hash-chained logs are on our roadmap and we can prioritise the work against a specific regulatory deadline. ## Can we download the audit log for our external auditors? Yes, and this is usually the reason organisations ask about the feature in the first place. From your business.cabson.uk admin portal, our reporting tools include an audit export. You choose a date range — up to twelve months per export, with longer ranges available on request — optionally filter by event type or user, and download the result as CSV or PDF. The CSV opens cleanly in Excel and includes column headers your auditors will recognise: timestamp_utc, actor_user_id, actor_email, event_type, resource_type, resource_id, previous_value, new_value. The PDF is formatted as a chronological report with page headers, totals, and a signed footer showing the export date and the user who requested it — the format most external accountants prefer for the physical audit file. For larger organisations with a dedicated internal audit team, we can also grant read-only API access to a secondary audit account, so your compliance software can pull the log continuously rather than waiting for a manual export at month end. ## How does the audit log support GDPR compliance? The Information Commissioner's Office requires that personal data processing be lawful, transparent, and auditable under UK GDPR. Our log meets the transparency requirement out of the box — you can show a data subject exactly which staff member accessed their booking history and when the access occurred. Retention is configurable. Our defaults hold financial records for seven years, matching HMRC's requirement for company accounting records, and non-financial administrative events for three years. When a former employee exercises their right to erasure, we anonymise their personal identifiers — email address, name, phone number — while retaining the anonymised transaction record your accounts team still needs for VAT reconciliation. The audit log records the anonymisation event itself, so you have proof of when the erasure request was actioned and by whom. If your organisation operates under stricter retention requirements — for instance, financial services firms under FCA SYSC 9 must retain records for at least five years post-relationship — we can extend retention on your account to whichever duration your DPO specifies. ## Is CabsOn's audit trail suitable for SOX-regulated industries? Sarbanes-Oxley Section 404 requires management to attest to the effectiveness of internal controls over financial reporting. For UK subsidiaries of US-listed parent companies — and for UK firms voluntarily adopting SOX-style controls — the taxi expense workflow is often flagged as a low-value but high-frequency transaction stream that needs its own audit chain. We support this with segregation of duties: approvers cannot approve their own bookings; finance users can view invoices but cannot create bookings; admin users can manage the account structure but cannot approve expenses unless explicitly granted the finance role. Approval-chain enforcement means bookings above configurable thresholds require documented sign-off before the driver is dispatched, and that sign-off is recorded in the log. The transaction record is immutable as described above, and every booking is tied to a named human user with their SSO identity rather than a shared login. We are not a SOC 2 Type II certified provider today. If SOC 2 attestation is a hard requirement for your parent company's controls testing, be aware that this is on our compliance roadmap but not yet complete — Uber for Business and Addison Lee are both further ahead on that specific certification. ## Who in our organisation can view the audit log? By default, only users with the Corporate Owner or Finance Admin role can access the full audit export. Department managers see audit entries scoped to their department — they can review who in their team cancelled which booking, but they cannot see other departments' activity. Individual travellers see their own booking history, including cancellations and amendments, presented as a personal timeline rather than a compliance report. You can also create a dedicated Audit role that has read-only access to the full log and nothing else — useful when you want to give your internal audit team a login without exposing booking or invoice creation permissions. ## How does CabsOn compare to Uber for Business and Addison Lee on audit transparency? Uber for Business provides a robust admin dashboard with per-ride receipts, expense category tagging, and export into expense management tools such as Expensify and SAP Concur. Their strength is scale, and their integrations catalogue is deeper than ours today. What their standard product does not currently offer is a per-action administrative audit log — the log they surface is transaction-focused rather than change-focused. Addison Lee, at the enterprise tier, provides account statements and management reports with named-traveller detail. Their strength is their London chauffeur fleet and the polish of their corporate account managers. Their audit reporting is comparable to ours for financial records; their per-admin-action logging is less granular than what we describe on this page. Where we believe we lead is on the combination of admin-action logging, downloadable format, and configurable retention — you can pull a single report that shows every non-financial administrative change alongside the booking history in one export. Where they lead: overall fleet size (Uber), premium chauffeur vehicles (Addison Lee), and native integrations into SAP Concur and Certify. If embedded connectors to those expense platforms are a hard requirement today, one of those providers may fit better; we integrate via CSV and API rather than native connector at this stage. ## What does a typical audit query look like in practice? A finance controller at a Manchester recruitment agency contacted us in April asking why a 340-pound booking to Manchester Airport had appeared on their February invoice with no associated candidate name. Within four minutes of logging into their admin portal, they had the answer: the booking had been created by a departmental admin, later reassigned by the same admin to a different candidate, then cancelled two hours before pickup — but the cancellation fell inside our two-hour grace window so a 50 percent cancellation fee applied. The full trail — creation, reassignment, cancellation, fee application — was visible in a single audit view, with all four actions attributable to the named admin user. That is what we mean by an audit trail: not a database of receipts, but a narrative of what actually happened, in whose name, and when.
## Integrations, retention, and access patterns For organisations that already run centralised logging or SIEM tooling, we expose the audit log via our corporate API. The endpoint returns paginated JSON with cursor-based navigation, so you can pull incremental deltas into Splunk, Datadog, or an internal logging warehouse. API keys inherit the same permission model as the admin portal — a key tied to an Audit role can read the log but cannot create bookings, issue refunds, or manage users. For SSO customers on Google Workspace or Microsoft Entra ID, we mirror the identity events into the audit log. When a user is deprovisioned in your identity provider, we capture the SCIM deprovisioning event and record the timestamp their CabsOn access was revoked. This closes a common audit gap where former employees retain corporate app access for days or weeks after leaving your organisation. Retention is configurable per record class. Financial records — invoices, payments, refunds — default to seven years to align with HMRC's Companies Act 2006 requirement for company accounting records. Non-financial administrative events default to three years. GDPR data-subject records — the entries capturing consent, erasure requests, and personal-data amendments — default to six years to match limitation periods for civil claims. You can extend any of these; we recommend against shortening them without written advice from your data protection officer. For accounting integration, we generate a monthly journal file alongside the standard invoice export. The journal is formatted for Xero and QuickBooks Online direct import — one row per booking, UK VAT split at 20 percent, department code populated from your cost-centre configuration. If you use Sage 50, Sage Business Cloud, or another package, the CSV column format is documented and mapping is straightforward for your bookkeeper. Access to the audit export itself is logged. If your Finance Admin downloads the January audit report on 3 February at 14:22, that download event appears in the audit log as an entry attributable to their named account. This meta-logging is standard practice for regulated environments and gives your compliance team confidence that log access is being used appropriately and by the right people. We do not throttle audit exports, but very large exports — multi-year, unfiltered across every department — run as background jobs and are emailed to you when ready rather than downloaded synchronously. In practice, a filtered monthly export of a busy corporate account running around 400 bookings a month generates a CSV of roughly 200KB and downloads in under a second. If your organisation is preparing for a specific compliance milestone — SOC 2 readiness review, an FCA thematic review, or a first-time ISO 27001 audit — our support team can walk you through what our log covers, where it stops, and what supplementary evidence you may need from us in writing. Contact your account manager, or open a support ticket from your admin portal, and we will send you a compliance pack tailored to the standard you are working against.
Licensed drivers Greater Manchester or TfL Private Hire (PHV) licensing on every booking
DBS-checked Background-checked drivers with airport access permits
ULEZ & Clean Air ready Modern fleet meeting London ULEZ and Greater Manchester Clean Air Zone standards
Fixed fare guarantee Drop-off charge, congestion charge and ULEZ bundled into the quote, no surge pricing
Vehicle classes

What you can book for Manchester

Saloon

  • Up to 4 passengers
  • 2 standard suitcases
  • Most economical option

Default choice for solo travel, couples and pairs heading to the airport. Modern petrol-hybrid or fully electric saloons across the fleet.

Estate

  • Up to 4 passengers
  • 4 suitcases
  • Family-friendly

Choose this when bags outnumber people. A standard family of four with full check-in luggage fits cleanly in an estate where a saloon would not.

Executive

  • Mercedes E-Class or BMW 5 Series
  • Suited driver
  • Water and wifi included

Business class transport for corporate travellers, visiting clients and hotel transfers. The default for premium-postcode airport runs.

8-seater MPV

  • Up to 8 passengers
  • 8 suitcases capacity
  • Mercedes V-Class or Vito

Single-vehicle transport for groups of up to 8. Common on hen and stag bookings, sports teams, family airport runs and corporate group transfers.

Chauffeur

  • Mercedes S-Class or BMW 7 Series
  • Suited driver
  • VIP and wedding work

Flagship class for VIP travel, weddings, premium events and corporate visiting directors. Hourly hire from 4 hours minimum or fixed-route.

Every booking includes

What is in the fixed fare

Flight tracking on every airport pickup

Pickup time auto-adjusts to actual landing. No driver-side panic if your flight runs late.

60 minutes free waiting on arrivals

Plenty of buffer for immigration, baggage claim and customs at the busiest airport hours.

Drop-off charge included

The £5 forecourt fee at every UK airport is in the quote, not added at the kerb. Same with London congestion charge and ULEZ.

Optional meet and greet

Driver waits at the terminal arrivals exit with a name board. No extra charge.

Card, PayPal, corporate invoice

Pay how you want. Corporate accounts get monthly invoicing with PO numbers and VAT receipts.

Child and booster seats

Available on request, fitted before pickup. Confirm seat type at booking so we match the right vehicle.

Coverage

Manchester on the map

FAQs

Frequently asked questions

What information does each audit log entry contain?

Each entry records the UTC timestamp, the acting user's email and internal ID, the event type (booking created, cancelled, admin action, and so on), the affected resource, and both the old and new values where a change occurred. IP address and user agent are also captured for admin console actions.

How long does CabsOn retain the corporate audit log?

By default, seven years for financial records to match HMRC guidance, three years for administrative events, and six years for GDPR-specific events. All three defaults are configurable upward on your account. We do not delete active corporate account logs during the retention window.

Can we export the audit log into our own SIEM or accounting system?

Yes. CSV and PDF export is available from your admin portal, and our corporate API returns paginated JSON for continuous ingestion into Splunk, Datadog, or a data warehouse. Xero and QuickBooks Online receive a formatted journal file monthly alongside the standard VAT invoice.

Does the audit log include failed admin login attempts?

Yes for the admin portal — failed admin logins are captured with timestamp, attempted email, IP address, and reason (wrong password, MFA challenge failed, SSO handshake declined). Failed traveller-app logins are captured in aggregate for anti-fraud purposes rather than per attempt in the admin audit view.

Is the audit log admissible in an employment tribunal or fraud investigation?

We provide the log as-is and can accompany it with a written statement of how it was generated and how tamper resistance is enforced. Admissibility ultimately depends on the tribunal or court, but the append-only construction and named-user attribution meet the standards typically expected for digital business records in the UK.

Can we redact personal data from the audit log when an employee leaves?

Yes. On a documented GDPR erasure request we anonymise the leaver's personal identifiers — name, email, phone — while retaining the anonymised transaction record for VAT and audit purposes. The anonymisation event itself is logged so you have proof of when it was actioned and by whom.

Does CabsOn charge extra for audit log access?

No. The audit log and standard CSV or PDF exports are included on every corporate account regardless of tier. API access for continuous ingestion and custom retention extensions beyond the default seven years are discussed as part of enterprise onboarding rather than sold as an add-on.

How quickly can we retrieve historical audit data?

Filtered exports up to twelve months usually generate in under a second and download immediately. Multi-year or unfiltered exports run as background jobs and are emailed to you when ready — typically within five minutes for a busy account with several hundred bookings a month.

What happens to the audit log if we close our corporate account?

We retain the log for the remainder of the applicable retention period even after account closure, to satisfy your ongoing HMRC and GDPR obligations. Final exports are provided on request during offboarding, and your account manager can arrange a certified archive of the closing state on request.

Does the audit log capture SSO and API activity as well as manual admin actions?

Yes. SSO login events, SCIM provisioning and deprovisioning, API key creation and rotation, and every API call that mutates data are all captured. Read-only API queries are not individually logged to avoid excessive noise, but the API key used is recorded against each authenticated session.