Transaction receipts

One of the key advantages a user gets when they use a mobile device to pay is the ability to see details of their transaction. Google Pay provides an intuitive user interface that allows users to see their transaction history. Rich receipts contain the agency name and logo, as well as a map of the location where the user made the transaction. If the agency uses fare capping, the rich receipt might also display a summary of the final settlement.

Map displays of transit taps

Google Pay helps users understand their transit journeys better with the use of maps. The user is provided a visual location history based on where they tapped.

Figure 1. Google Pay transactions table, with fare capping and map, after settlement of a transaction (single journey).
Figure 2. Google Pay transactions table, with fare capping and map, after settlement of a transaction (multiple journeys).

There are two ways to generate a map:

  1. Use precise stations based on tap data. This is the preferred method.

    The transit terminal passes the phone the station information at the time of tap. It uses a tag set on the terminal to pass the information. This provides absolute confidence that the user tapped at a particular terminal.

    For more details on how to implement this method, see the enhanced functionality settings sections for "Merchant Name with station" and "MCC setting on the terminal."

  2. Use inferred stations based on GPS.

    In this case, the transit terminal doesn't have any station-specific information in the tap. It passes to the phone that it doesn't have any station-specific information.

    Google can still use the other terminal and phone data to infer where the user tapped. If the confidence is high, Google shows a map and station name.

    However, this inference is less reliable in highly dense locations, underground, or where multiple lines overlap.

    To enable this feature, see the enhanced functionality settings sections for "Merchant Name" and "MCC Setting on the terminal."

Rollups when fare capping

Some transit agencies have implemented fare caps. This typically means that when a user rides, a pre-auth is completed only on the first tap. This is done to verify that the card is in a good state. The user can then continue to ride while the transit agency accumulates the trips on their backend.

At the end of the fare-capping period, which is usually at the end of the day, the transit agency calculates the final fare. At that time, the transit agency charges the final amount as a single settlement transaction. This means that users will have several taps related to a single end-of-day settlement.

A single end-of-day settlement can leave users unsure how much they were actually charged and which journeys relate to that settlement. To address this, Google Pay developed receipt roll-ups. Receipt roll-ups merge all taps related to a single settlement into one transaction that's shown to the user. This rollup happens throughout the day, without the price, and then it gets updated after the final price is known.

Receipt behavior on the first tap when there's a pre-auth charge

On first tap, and when there's a pre-auth charge, the following is displayed in the app:

  • Within the app, the tap is shown in the transactions history as "pending."
  • There are no push-notification on the pre-auth.
Figure 3. Google Pay transactions table after first transaction (without station name).
Figure 4. Google Pay transactions table with rollups (without station name).

Figure 5. Google Pay transactions table after first transaction (with station name).
Figure 6. Google Pay transactions table with rollups (with station name).

At final settlement, the following occurs:

  1. When we receive the updated settlement for the transaction, which needs to use the same transaction and pre-auth identifier, we update the transaction with the final charged amount.
  2. Within the app, we update the transactions history and change the amount from "pending" to the final amount.
  3. In the cases where a transit agency provides business logic for when fare capping is computed, Google merges all associated taps to the final settlement amount. We do this to show users a consolidated transaction receipt.
  4. Figure 7. Google Pay transactions table after settlement of transaction (without station name).
    Figure 8. Google Pay transactions table after settlement of transaction with rollups (without station name).

    Figure 9. Google Pay transactions table after settlement of transaction (with station name).
    Figure 10. Google Pay transactions table after settlement of transaction with rollups (with station name).

    The following is displayed in the app:

    • Pre-auth amount is shown as “pending”.

      Many transit agencies do pre-auth on the first tap to verify that the card is valid, and for risk purposes. However, this pre-auth amount isn't the final amount. For example, the device might only require the pre-auth amount to be a minimal charge, such as $0.01.

      Users can get confused and call customer support when they see pre-auth amount charges. To avoid this, Google Pay doesn't show the pre-auth amounts in the transaction table.

    • No push-notifications are sent for pre-auth transactions.

      Many transit terminals are only periodically online because they use offline device authentication (ODA) instead. These terminals might respond much later than the tap.

      A user can get confused and call customer support when they think their card has been charged without their permission. This can happen when a terminal is offline for the tap, then goes online later and sends the user a push-notification several hours after their tap. For more information, see the enhanced functionality settings section for "Network standards for fare capping."

    To help users know where they've transacted, it's helpful for the user to see the agency name and logo next to each transaction.

    To enable this feature, the transit agency or representative needs to complete the Permission to display brand features on Google form to upload their logo and provide permission to Google to display it.