Represents an individual UPI transaction.
An example JSON object is:
{
  "entryId": 12,
  "payment": {
    "settlementLineOfBusinessId": "",
    "merchantId": "BD19CONUPI",
    "bankId": "G01",
    "processorTransactionId": "MOBC9126123456",
    "googleTransactionId": "151353143:253213525626262:433463763432523524234",
    "grossAmount": {
      "amountMicros": 1003450000,
      "currencyCode": "INR"
    },
    "transactionDate": {
      "epochMillis": 1231300000
    },
    "settlementDate": {
      "epochMillis": 1231500000
    },
    "paymentMethod": "upi",
    "invoiceId": "GPB.426.264554.43434",
    "buyerName": "John Doe",
    "buyerAddress": "24645234262346243",
    "buyerAccount": "9876543210"
  }
}
| JSON representation | 
|---|
| { "entryId": string, // Union field | 
| Fields | |
|---|---|
| entryId | 
 REQUIRED: A non-zero and non-negative number within the settlement file that uniquely identifies a settlement line. | 
| Union field transaction_type. REQUIRED: The type of transaction this entry is about.transaction_typecan be only one of the following: | |
| payment | 
 This entry is for a payment. | 
| refund | 
 This entry is for a refund. | 
EntryDetails
| JSON representation | 
|---|
| { "merchantId": string, "bankId": string, "processorTransactionId": string, "googleTransactionId": string, "mercRefundId": string, "grossAmount": { object ( | 
| Fields | |
|---|---|
| merchantId | 
 REQUIRED: Merchant ID. | 
| bankId | 
 REQUIRED: Bank ID. | 
| processorTransactionId | 
 REQUIRED: The processor's ID for this entry. For instance, if this entry is a payment, this is the processor's ID for the payment. If the entry is a refund, this is the processor's ID for the refund. | 
| googleTransactionId | 
 REQUIRED: Google's ID for this transaction. This will be the same for all entries related to a single transaction. For instance, a transaction with both a payment and a refund will have the same Google transaction ID for both entries. | 
| mercRefundId | 
 CONDITIONAL: Google's ID for this refund. | 
| grossAmount | 
 REQUIRED: Gross Amount. | 
| originalTransactionGrossAmount | 
 TO_BE_REQUIRED: Gross Amount of the original transaction.. | 
| transactionDate | 
 REQUIRED: Date of the transaction. | 
| settlementDate | 
 REQUIRED: Settlement Date. | 
| paymentMethod | 
 REQUIRED: Payment Method. | 
| settlementLineOfBusinessId | 
 OPTIONAL: Settlement line of business ID. | 
| paymentCategory | 
 TO_BE_REQUIRED: Payment Category. Google does not have this data yet. | 
| transactionProcessType | 
 OPTIONAL: Transaction process type. | 
| buyerName | 
 REQUIRED: Buyer name. Required for Domestic payments. | 
| buyerAddress | 
 REQUIRED: A stable ID for the buyer. | 
| buyerAccount | 
 REQUIRED Remitter Account Number. | 
| invoiceId | 
 REQUIRED: An ID that the buyer would recognize as identifying the thing that the buyer purchased. | 
| userIpAddress | 
 TO_BE_REQUIRED: The IP address of the user's device that initiated the transaction. | 
| entrySpecificDetails | 
 OPTIONAL: Details specific to the transaction type. | 
EntrySpecificDetails
| JSON representation | 
|---|
| {
  "payment": {
    object ( | 
| Fields | |
|---|---|
| payment | 
 | 
Payment
| JSON representation | 
|---|
| { "payeeVpa": string, "payerVpa": string } | 
| Fields | |
|---|---|
| payeeVpa | 
 TO_BE_REQUIRED: Payee VPA (e.g. googleyoutube@axisbank) | 
| payerVpa | 
 OPTIONAL: Payer VPA (e.g. sharukhan@okaxis) |