Skip to content

Project overview

This website provides technical documentation for the benefits application from the California Integrated Travel Project (Cal-ITP).

Documentation for the dev (default) branch is available online at:


Cal-ITP Benefits is an application that enables automated eligibility verification and enrollment for transit benefits onto customers’ existing contactless bank (credit/debit) cards.

The development of this publicly-accessible client is being managed by Caltrans’ California Integrated Travel Project (Cal-ITP), in partnership with the California Department of Technology (CDT). From the Cal-ITP site:

Our Cal-ITP Benefits web application streamlines the process for transit riders to instantly qualify for and receive discounts, starting with Monterey-Salinas Transit (MST), which offers a half-price Senior Fare. Now older adults (65+) who are able to electronically verify their identity are able to access MST’s reduced fares without the hassle of paperwork.

We worked with state partners on this product launch, and next we’re working to bring youth, lower-income riders, veterans, people with disabilities, and others the same instant access to free or reduced fares across all California transit providers, without having to prove eligibility to each agency.

The application is accessible to the public at

Technical details

benefits is a Django 4 web application. The application talks to one or more Eligibility Verification APIs or authentication providers. These APIs and the application are designed for privacy and security of user information:

  • The API communicates with signed and encrypted JSON Web Tokens containing only the most necessary of user data for the purpose of eligibility verification
  • The application requires no user accounts and stores no information about the user
  • Interaction with the application is anonymous, with only minimal event tracking for usage and problem analysis

Running the application locally is possible with Docker and Docker Compose. Hosting information.

The user interface and content is available in both English and Spanish. Additional language support is possible via Django’s i18n and l10n features.

The application communicates with external services like Littlepay via API calls and others like the Identity Gateway via redirects, both over the public internet. See all the system interconnections.