# Roles and Responsibilities

## Taxi Meter / Dispatch Partner

Your system is responsible for:

- Notifying CabFare Connect of driver login and logout events
- Initiating and closing trips
- Calculating all regulated fare amounts — CabFare Connect does not perform fare calculation
- Submitting fare and Subsidy Scheme details to CabFare Connect at trip end and determining the payment method for the remaining balance
- Requesting card payments from the Payment Terminal via CabFare Connect
- Hosting inbound event endpoints to receive notifications from CabFare Connect
- Handling manual Subsidy Card number entry if the Payment Terminal cannot read a card

## Payment Terminal Partner

Your system is responsible for:

- Notifying CabFare Connect of driver login and logout events
- Initiating the device link to establish a synchronised session with the Taxi Meter
- Reading physical Subsidy Cards and submitting them to CabFare Connect for validation
- Processing card payments for the balance amount instructed by CabFare Connect
- Reporting payment outcomes (approved or declined) back to CabFare Connect
- Hosting inbound event endpoints to receive notifications from CabFare Connect

## Shared Responsibilities

Both partners are responsible for:

- Handling network connectivity issues and timeouts gracefully
- Implementing retry logic for failed or unacknowledged events
- Returning an immediate `200 OK` or `204 No Content` upon receiving inbound events to prevent CabFare Connect from timing out
- Maintaining consistent identifiers (`driverId`, `vehiclePlate`, `taxiMeterId`, `terminalId`) across all API calls within a session

---
Source: https://docs.cabfare.com/api/roles-and-responsibilities
