Appearance
GET /v0.5.0/ping. Basic ping test. Does not require authorization. Legacy version.
POST /v0.5.0/ping. Ping with body for legacy version. Requires authorization.
POST /terminal/driver/poll. Poll current login/link status for a Payment Terminal + Driver.
POST /terminal/driver/login. Send details of Driver login event (from Payment Terminal). This establishes the presence of the Payment Terminal and provides relevant information about the terminal when logging in. The driver's current MPTP data will be included in the response; you should update your UI accordingly. The terminalId field is defined as a string and can take any form that suits your requirements, as long as it is a unique identifier. You may include relevant data within the ID or use the clientIds field instead. As an example: PT100:FL250 may contain the terminal ID PT100 and some other relevant data, like fleet ID, as FL250. Or, simply use PT100 as the terminal ID and also provide the second ID in clientIds. The vehiclePlate field is optional; only provide this if the vehicle plate is confirmed and known to the Payment Terminal. This may be the case with hardware that is fixed to a specific vehicle.
POST /terminal/driver/logout. Send details of Driver logout event (from Payment Terminal).
POST /terminal/driver/validate. Request Driver MPTP Smart Card validation (from Payment Terminal). Use this to validate a driver's MPTP Smart Card at any time. CabFare DCP will complete validation then return the result to Payment Terminal. The Payment Terminal must check the mptpStatus field in the response to determine the correct action to take. Note that the "card number" is the last 9 digits of the full number printed on the card. The first 9 digits are fixed and will always read "903600323".
POST /terminal/link/request. Send a link mode request (from Payment Terminal). On success, await response from CabFare DCP via Link request response (/link/response)
POST /terminal/mptp/validate. Request MPTP Member Card validation (from Payment Terminal). CabFare DCP will complete validation and return the result to Payment Terminal. Note that the "card number" is the last 9 digits of the full number printed on the card. The first 9 digits are fixed and will always read "903600323".
POST /terminal/payment/complete. Send details of a payment complete event (from Payment Terminal). Use this to send the details of any payment processed on the Payment Terminal. This should occur whether the payment was completed successfully or if any error or cancellation occurred. The paymentStatus field in request body indicates success or failure.
POST /meter/driver/poll. Poll current login/link status for a Taxi Meter + Driver.
POST /meter/driver/login. Send a driver login event (from Taxi Meter). This establishes the presence of the Taxi Meter and provides relevant information about the meter that the driver is logging in on. In response the meter receives the driver's current MPTP data. The taxiMeterId field is defined as a string and can take any form that suits your requirements, as long as it is a unique identifier. You may include relevant data within the ID or use the clientIds field instead. As an example: TM100:FL250 may contain the meter ID TM100 and some other relevant data, like fleet ID, as FL250. Or, simply use TM100 as the meter ID and also provide the second ID in the clientIds field.
POST /meter/driver/logout. Send a driver logout event (from Taxi Meter). Includes shift end data required for STV record keeping.
POST /meter/trip/start. Send a Trip Start event (from Taxi Meter) The tripID is generated by Taxi Meter and will be used for further trip related endpoints.
POST /meter/trip/end. Send a Trip End event (from Taxi Meter) The request payload contains trip and fare details, including relevant MPTP data to process a subsidy if required. When MPTP processing is requested the endpoint will return the applied values for confirmation. Note: - lifting fee eligibility will be verified according to the passenger MPTP status - the lift fee amount is determined by the Taxi Meter according to STV rules - check the returned values & status to confirm actual amounts applied
POST /meter/mptp/read. Send an MPTP card read request (from Taxi Meter) The driver can enter a member MPTP card into the payment terminal for reading at any point. If valid, CabFare DCP will send "MPTP card read notification" to the Taxi Meter.
POST /meter/mptp/validate. Request MPTP member number validation (from Taxi Meter) When the member card cannot be read by Payment Terminal, the driver may enter the member number manually into the Taxi Meter. The meter then calls this endpoint to validate the manually entered member number. Note that the "member number" is the last 9 digits of the card number. The first 9 digits are fixed and will always read "903600323". On success, the endpoint will return an array of MPTP member numbers and their validation status.
POST /meter/payment/request. Send a card payment request (from Taxi Meter) This will pre-fill payment amount and related fields in the Payment Terminal and begin process of accepting a card payment. Provide a unique transactionId for use in other transaction related actions, such as cancelling payment request. If not provided, a unique ID will be generated and returned in the response.
POST /meter/payment/cancel. Send a card payment cancellation request (from Taxi Meter) This requires the transactionId to correctly identify the original payment request.
POST /meter/job/done. Send a job done event (from Taxi Meter). This indicates all payments being complete for a trip. Depending on system configuration you can also provide payment information for receipt printing via Payment Terminal.

