# Receive Transaction Notification
source: https://developer.mastercard.com/transaction-notifications/documentation/use-cases/receive-transaction-notification/index.md

When a cardholder makes a purchase, Mastercard sends a real-time notification to your webhook endpoint. Your app uses the `cardReference` to identify the cardholder and take action based on your use case, for example, creating an expense entry, sending a fraud alert, or triggering a loyalty reward.

## How It Works {#how-it-works}

The following diagram shows the end-to-end flow for receiving a transaction notification:
Diagram receivetransactionnotification

1. The cardholder makes a purchase at a merchant using their enrolled card.
2. The merchant processes the payment through Mastercard's Authorization Network.
3. Mastercard filters the transaction data for the enrolled card.
4. Mastercard sends a `POST /notifications` request to your webhook endpoint containing the transaction payload.
5. Your service responds with an HTTP 200 status code to acknowledge receipt.
6. Your service looks up the cardholder using the `cardReference` in the notification payload.
7. Your service optionally sends a communication to the cardholder, for example, prompting them to categorize an expense or upload a receipt.

## Endpoint Structure {#endpoint-structure}


API Reference: `POST /notifications`

## Next Steps {#next-steps}

* [View the full Open API specification](https://developer.mastercard.com/transaction-notifications/documentation/api-reference/index.md)
* [Review the API's error responses](https://developer.mastercard.com/transaction-notifications/documentation/codes-and-formats/index.md)
