Digital TT Card / Y2M-Interface description
- 1 Innledning
- 2 Flyt
- 3 API
- 3.1 Verifisering av bruker
- 3.1.1 Headers:
- 3.1.2 POST: trip/create/challenge
- 3.1.2.1 Body:
- 3.1.2.2 Responses:
- 3.1.3 POST: trip/create/verify
- 3.1.3.1 Body:
- 3.1.3.2 Responses:
- 3.1.4 POST:/trip/create/code
- 3.1.4.1 Body:
- 3.1.4.2 Responses:
- 3.2 Oppstart av tur
- 3.3 Avslutte tur
- 3.3.1 POST:/trip/end/:trip_id
- 3.4 Betaling utført
- 3.1 Verifisering av bruker
Innledning
Dette dokumentets formål er å beskrive de tekniske aspektene ved «digitalt TT-kort»
Dokumentet vil først presentere overordnet flyt og logikk før detaljer rundt meldingsstruktur i Ruters API presenteres.
Flyt
Initiering av tur
Ruter vil tilby en web portal for oppslag på kunder før turer. Denne siden kan brukes ved forhåndsbestilling fra kunde og vil ikke brukes ved praiing av Taxi.
Ved praiing vil kunden oppgi at turen er en TT-tur når de setter seg inn i Taxien. Deretter må kunden verifiseres
Verifisering av bruker
For forhåndsbestilte turer er det ikke behov for verifisering av bruker og turen kan starte direkte
Verifisering av kunde med telefonnummer:
Kunden oppgir sitt telefonnummer og sjåføren registrerer det på sin terminal.
Systemet må kalle Ruters API med telefonnummeret som kundens identifikator
Ruter vil sende en SMS til kunden som kunden må oppgi til sjåføren
Sjåføren taster inn koden på sin terminal som igjen kaller Ruters API
APIet vil returnere status og ved positiv respons kan turen starte.
Respons for godkjent tur vil også inneholde kundeinformasjon
Verifisering av kunde uten telefonnummer:
I noen tilfeller vil ikke kunden ha telefonnummer. De kan da oppgi kundenummeret sitt (som vil stå på TT informasjonskortet)
Sjåføren taster inn kundenummer og systemet gjør et kall mot Ruters API
APIet vil returnere gyldig kundenummer med kundedetaljer (som kan brukes for å identifisere bruker mot annen identifikasjon)
Turen kan starte
Oppstart av tur
Når turen er bekreftet og kan starte skal Ruters API kalles for å bekrefte start av turen
Dette gjelder alle turer uavhengig av verifisering
Avslutte tur
Når turen er avsluttet skal en oppsummeringsmelding sendes via Ruters API
Betaling utført
Etter gjennomført betaling skal en oppsummeringsmelding for betaling sendes via Ruters API
API
Verifisering av bruker
Headers:
{
“Authorization”: “Bearer …”
}
POST: trip/create/challenge
Description: Endpoint that generates an SMS that is sent to the customer with a code that will be used to verify the customer.
Body:
{
“phone_number”: “string” //ex. “phone_number”: “+4745454545”
}
Responses:
statusCode: 200
{
status: “ok”
}
statusCode: 404
POST: trip/create/verify
Description: Endpoint for verifying the customer.
Body:
Responses:
statusCode: 200
statusCode: 404
statusCode: 403
POST:/trip/create/code
Description: Endpoint used when the customer doesn’t have a phone, or doesn’t want to use it.
Requires the customer to have the physical TT-card, or know their id
Body:
Responses:
statusCode: 200
statusCode: 404
statusCode: 403
Oppstart av tur
POST: /trip/start/:trip_id
Description: Endpoint to start the trip. The driver must verify that the information about the customer is likely correct.
Parameter: :trip_id = unique id for trip, retrieved after the customer has been verified
Body:
Response:
statusCode: 200
Avslutte tur
POST:/trip/end/:trip_id
Description: Called once the taximeter is stopped.
Parameter: :trip_id = unique id for trip, retrieved after the customer has been verified
Body:
Response:
statusCode: 200
Betaling utført
POST:/trip/end/:trip_id/payment
Description: Endpoint called after the customer has paid.
Parameter: :trip_id = unique id for trip, retrieved after the customer has been verified
Body:
Response:
statusCode: 200