feat: add IssuerSwitchParticipants API

feat: update the fields exported by the ExportMandateTransactions and ExportFinancialTransactions APIs
feat!: Modified the MandateTransactions message to use SettlementParticipant

PiperOrigin-RevId: 541578065
gce-action-fix
Google APIs 2 years ago committed by Copybara-Service
parent 3f11cdd25f
commit 93f9f67654
  1. 11
      google/cloud/paymentgateway/issuerswitch/v1/BUILD.bazel
  2. 4
      google/cloud/paymentgateway/issuerswitch/v1/common_fields.proto
  3. 3
      google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_grpc_service_config.json
  4. 5
      google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_v1.yaml
  5. 231
      google/cloud/paymentgateway/issuerswitch/v1/participants.proto
  6. 223
      google/cloud/paymentgateway/issuerswitch/v1/transactions.proto

@ -23,6 +23,7 @@ proto_library(
srcs = [
"common_fields.proto",
"logs.proto",
"participants.proto",
"resolutions.proto",
"rules.proto",
"transactions.proto",
@ -38,6 +39,7 @@ proto_library(
"//google/type:latlng_proto",
"//google/type:money_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:timestamp_proto",
],
)
@ -93,6 +95,8 @@ java_gapic_library(
java_gapic_test(
name = "issuerswitch_java_gapic_test_suite",
test_classes = [
"com.google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchParticipantsClientHttpJsonTest",
"com.google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchParticipantsClientTest",
"com.google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchResolutionsClientHttpJsonTest",
"com.google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchResolutionsClientTest",
"com.google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchRulesClientHttpJsonTest",
@ -234,10 +238,13 @@ php_gapic_library(
name = "issuerswitch_php_gapic",
srcs = [":issuerswitch_proto_with_info"],
grpc_service_config = "issuerswitch_grpc_service_config.json",
migration_mode = "PRE_MIGRATION_SURFACE_ONLY",
rest_numeric_enums = False,
service_yaml = "issuerswitch_v1.yaml",
transport = "grpc+rest",
deps = [":issuerswitch_php_proto"],
deps = [
":issuerswitch_php_proto",
],
)
# Open Source Packages
@ -308,6 +315,7 @@ ruby_cloud_gapic_library(
grpc_service_config = "issuerswitch_grpc_service_config.json",
rest_numeric_enums = False,
service_yaml = "issuerswitch_v1.yaml",
transport = "grpc+rest",
deps = [
":issuerswitch_ruby_grpc",
":issuerswitch_ruby_proto",
@ -337,6 +345,7 @@ load(
csharp_proto_library(
name = "issuerswitch_csharp_proto",
extra_opts = [],
deps = [":issuerswitch_proto"],
)

@ -34,8 +34,8 @@ message AccountReference {
// IFSC of the account's bank branch.
string ifsc = 1;
// Type of account. Examples include SAVINGS, CURRENT, etc.
string account_type = 2;
// Output only. Type of account. Examples include SAVINGS, CURRENT, etc.
string account_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
// Unique number for an account in a bank and branch.
string account_number = 3;

@ -10,6 +10,9 @@
},
{
"service": "google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchResolutions"
},
{
"service": "google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchParticipants"
}
],
"timeout": "60s",

@ -4,6 +4,7 @@ name: issuerswitch.googleapis.com
title: Issuer switch API
apis:
- name: google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchParticipants
- name: google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchResolutions
- name: google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchRules
- name: google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchTransactions
@ -35,6 +36,10 @@ http:
authentication:
rules:
- selector: 'google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchParticipants.*'
oauth:
canonical_scopes: |-
https://www.googleapis.com/auth/cloud-platform
- selector: 'google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchResolutions.*'
oauth:
canonical_scopes: |-

@ -0,0 +1,231 @@
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.paymentgateway.issuerswitch.v1;
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/api/field_behavior.proto";
import "google/cloud/paymentgateway/issuerswitch/v1/common_fields.proto";
import "google/protobuf/field_mask.proto";
import "google/protobuf/timestamp.proto";
option csharp_namespace = "Google.Cloud.PaymentGateway.IssuerSwitch.V1";
option go_package = "cloud.google.com/go/paymentgateway/issuerswitch/apiv1/issuerswitchpb;issuerswitchpb";
option java_multiple_files = true;
option java_outer_classname = "ParticipantsProto";
option java_package = "com.google.cloud.paymentgateway.issuerswitch.v1";
option php_namespace = "Google\\Cloud\\PaymentGateway\\IssuerSwitch\\V1";
option ruby_package = "Google::Cloud::PaymentGateway::IssuerSwitch::V1";
// A service that allows for the management of participants in the issuer
// switch.
service IssuerSwitchParticipants {
option (google.api.default_host) = "issuerswitch.googleapis.com";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Fetch the issuer switch participant. This method can be used to retrieve
// all details of a participant in the issuer switch.
//
// In UPI, the participant is identified by their account's IFSC and
// account number.
rpc FetchParticipant(FetchParticipantRequest) returns (IssuerParticipant) {
option (google.api.http) = {
post: "/v1/{parent=projects/*}/issuerParticipants:fetch"
body: "*"
};
}
// Update the issuer switch participant. Currently, this API only allows for
// the
// [metadata][google.cloud.paymentgateway.issuerswitch.v1.IssuerParticipant.metadata]
// field to be updated.
//
// **Note** that this method replaces any existing `metadata` field value in
// the participant with the new value. Specifically, it does not do a merge.
// If new name-value pairs are to be added to/removed from the metadata, then
// callers must first invoke the
// [FetchParticipant][google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchParticipants.FetchParticipant]
// API to get the current value of the `metadata` field, make updates to it
// and then update it back to the issuer switch using this method.
rpc UpdateIssuerParticipant(UpdateIssuerParticipantRequest)
returns (IssuerParticipant) {
option (google.api.http) = {
patch: "/v1/{parent=projects/*}/issuerParticipants:update"
body: "issuer_participant"
};
option (google.api.method_signature) =
"parent,issuer_participant,update_mask";
}
// Activate the issuer switch participant for UPI transactions. If the
// participant is already in an `ACTIVE` state, then this API will make no
// change to the participant's state and return a successful response.
//
// An `ACTIVE` participant can perform all UPI operations normally.
rpc ActivateParticipant(ParticipantStateChangeRequest)
returns (Participants) {
option (google.api.http) = {
post: "/v1/{parent=projects/*}/issuerParticipants:activate"
body: "*"
};
}
// Deactivate the issuer switch participant for UPI transactions. If the
// participant is already in an `INACTIVE` state, then this API will make no
// change to the participant's state and return a successful response.
//
// An `INACTIVE` participant cannot perform any UPI operations which involve
// MPIN verification.
rpc DeactivateParticipant(ParticipantStateChangeRequest)
returns (Participants) {
option (google.api.http) = {
post: "/v1/{parent=projects/*}/issuerParticipants:deactivate"
body: "*"
};
}
// Mark the mobile number of the issuer switch participant as changed to
// prevent UPI transactions. If the participant is already in a
// `MOBILE_NUMBER_CHANGED` state, then this API will make no change to the
// participant's state and return a successful response.
//
// Any UPI operation for a participant in the `MOBILE_NUMBER_CHANGED` state
// will cause the issuer switch to return a `B1` error to the UPI payments
// orchestrator which would force the user to re-register with UPI.
rpc MobileNumberChanged(ParticipantStateChangeRequest)
returns (Participants) {
option (google.api.http) = {
post: "/v1/{parent=projects/*}/issuerParticipants:mobileNumberChanged"
body: "*"
};
}
}
// Request for the `FetchParticipant` method.
message FetchParticipantRequest {
// Required. The parent resource for the participants. The format is
// `projects/{project}`.
string parent = 1 [(google.api.field_behavior) = REQUIRED];
// Required. The account details of the issuer participant.
AccountReference account_reference = 2
[(google.api.field_behavior) = REQUIRED];
}
// A customer of the bank who participates in transactions processed by the
// issuer switch.
message IssuerParticipant {
// The state of the participant.
enum State {
// Unspecified state.
STATE_UNSPECIFIED = 0;
// The participant is inactive for all UPI transactions.
// They need to register again and provide a new MPIN.
INACTIVE = 1;
// The participant is active for all UPI transactions.
ACTIVE = 2;
// The participants MPIN has been locked and no UPI transactions will be
// permitted until MPIN has been reset.
MPIN_LOCKED = 3;
// The participants mobile number has been changed in the issuer bank.
MOBILE_NUMBER_CHANGED = 4;
}
// The metadata of the participant.
message Metadata {
// Optional. Additional metadata about a particular participant as key-value
// pairs. These values are returned by the bank adapter/card adapter in
// response to the SearchAccounts/InitiateRegistration APIs.
map<string, string> values = 1 [(google.api.field_behavior) = OPTIONAL];
}
// Required. The account details of the issuer participant. Only the
// account_number and ifsc fields will be used.
AccountReference account_reference = 1
[(google.api.field_behavior) = REQUIRED];
// Output only. The mobile number of the participant.
string mobile_number = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The current state of the participant.
State state = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
// Optional. Additional metadata about the participant.
Metadata metadata = 4 [(google.api.field_behavior) = OPTIONAL];
// Output only. The current count of consecutive incorrect MPIN attempts.
int32 mpin_failure_count = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time when participant's MPIN got locked due to too many
// incorrect attempts.
google.protobuf.Timestamp mpin_locked_time = 6
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time when the participant's account was onboarded to PGIS.
google.protobuf.Timestamp create_time = 7
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time when the participant was last updated.
google.protobuf.Timestamp update_time = 8
[(google.api.field_behavior) = OUTPUT_ONLY];
}
// Request for the `UpdateIssuerParticipant` method.
message UpdateIssuerParticipantRequest {
// Required. The parent resource for the participants. The format is
// `projects/{project}`.
string parent = 1 [(google.api.field_behavior) = REQUIRED];
// Required. The participant to update.
IssuerParticipant issuer_participant = 2
[(google.api.field_behavior) = REQUIRED];
// Required. The list of fields to update.
google.protobuf.FieldMask update_mask = 3
[(google.api.field_behavior) = REQUIRED];
}
// Request for the `ActivateParticipant`, `DeactivateParticipant` and
// `MobileNumberUpdated` methods.
message ParticipantStateChangeRequest {
// Required. The parent resource for the participant. The format is
// `projects/{project}`.
string parent = 1 [(google.api.field_behavior) = REQUIRED];
// The identifier for the issuer participant. One of the two values must be
// specified.
oneof id {
// Required. The account details of the issuer participant.
AccountReference account_reference = 2;
// Required. The mobile number of the issuer participant.
string mobile_number = 3;
}
}
// Response for the [ActivateParticipant][],
// [DeactivateParticipant][] and [MobileNumberUpdated][] methods.
message Participants {
// Output only. The list of updated participants.
repeated IssuerParticipant participants = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
}

@ -35,6 +35,7 @@ option java_package = "com.google.cloud.paymentgateway.issuerswitch.v1";
option php_namespace = "Google\\Cloud\\PaymentGateway\\IssuerSwitch\\V1";
option ruby_package = "Google::Cloud::PaymentGateway::IssuerSwitch::V1";
// Fetch the issuer switch participant.
// Lists and exports transactions processed by the issuer switch.
service IssuerSwitchTransactions {
option (google.api.default_host) = "issuerswitch.googleapis.com";
@ -281,6 +282,19 @@ service IssuerSwitchTransactions {
// * **Max Length** - 9 characters
// * **Description** - Type of the payee's device. This will be one of
// 'MOB', 'INET', 'USDC/USDB', 'POS'.
// 1. `ReferenceID`
// * **Min Length** - 0 characters
// * **Max Length** - 35 characters
// * **Description** - Consumer reference number to identify loan number,
// order id etc.
// 1. `ReferenceURI`
// * **Min Length** - 1 characters
// * **Max Length** - 35 characters
// * **Description** - URL for the transaction.
// 1. `ReferenceCategory`
// * **Min Length** - 2 characters
// * **Max Length** - 2 characters
// * **Description** - Reference category.
rpc ExportFinancialTransactions(ExportFinancialTransactionsRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
@ -410,6 +424,20 @@ service IssuerSwitchTransactions {
// * **Min Length** - 12 characters
// * **Max Length** - 12 characters
// * **Description** - Mobile number of the payer.
// 1. `PayerIFSC`
// * **Min Length** - 11 characters
// * **Max Length** - 11 characters
// * **Description** - IFSC of the payer's bank account.
// 1. `PayerAccountNumber`
// * **Min Length** - 1 characters
// * **Max Length** - 30 characters
// * **Description** - Payer's bank account number.
// 1. `PayerAccountType`
// * **Min Length** - 3 characters
// * **Max Length** - 7 characters
// * **Description** - Payer's bank account type. This will be one of
// `SAVINGS`, `DEFAULT`, `CURRENT`, `NRE`, `NRO`, `PPIWALLET`,
// `BANKWALLET`, `CREDIT`, `SOD`, or `UOD`.
// 1. `PayeeVPA`
// * **Min Length** - 3 characters
// * **Max Length** - 255 characters
@ -418,11 +446,35 @@ service IssuerSwitchTransactions {
// * **Min Length** - 12 characters
// * **Max Length** - 12 characters
// * **Description** - Mobile number of the payee.
// 1. `PayeeIFSC`
// * **Min Length** - 11 characters
// * **Max Length** - 11 characters
// * **Description** - IFSC of the payee's bank account.
// 1. `PayeeAccountNumber`
// * **Min Length** - 1 characters
// * **Max Length** - 30 characters
// * **Description** - Payee's bank account number.
// 1. `PayeeAccountType`
// * **Min Length** - 3 characters
// * **Max Length** - 10 characters
// * **Description** - Payee's bank account type. This will be one of
// `SAVINGS`, `DEFAULT`, `CURRENT`, `NRE`, `NRO`, `PPIWALLET`,
// `BANKWALLET`, `CREDIT`, `SOD`, or `UOD`.
// 1. `PayeeMerchantID`
// * **Min Length** - 1 characters
// * **Max Length** - 30 characters
// * **Description** - Payee's merchant ID, only if the payee is a
// merchant
// 1. `PayeeMerchantName`
// * **Min Length** - 1 characters
// * **Max Length** - 99 characters
// * **Description** - Payee's merchant name, only if the payee is a
// merchant.
// 1. `PayeeMCC`
// * **Min Length** - 4 characters
// * **Max Length** - 4 characters
// * **Description** - Payee's Merchant Category Code (MCC), only if the
// payee is a merchant.
// 1. `Amount`
// * **Description** - Amount specified in the mandate.
// 1. `RecurrencePattern`
@ -495,6 +547,95 @@ service IssuerSwitchTransactions {
// * **Description** - Error code as per the UPI specification. The issuer
// switch maps the ErrorCode to an appropriate error code that complies
// with the UPI specification.
// 1. `PayerDeviceInfoTypeAppName`
// * **Min Length** - 0 characters
// * **Max Length** - 20 characters
// * **Description** - Payment application name on the payer's device.
// 1. `PayerDeviceInfoTypeCapability`
// * **Min Length** - 0 characters
// * **Max Length** - 99 characters
// * **Description** - Capability of the payer's device.
// 1. `PayerDeviceInfoTypeGeoCode`
// * **Min Length** - 0 characters
// * **Max Length** - 15 characters
// * **Description** - Geo code of the payer's device. This will include
// floating point values for latitude and longitude (separated by colon).
// 1. `PayerDeviceInfoTypeID`
// * **Min Length** - 0 characters
// * **Max Length** - 35 characters
// * **Description** - Device ID of the payer's device.
// 1. `PayerDeviceInfoTypeIP`
// * **Min Length** - 0 characters
// * **Max Length** - 39 characters
// * **Description** - IP address of the payer's device.
// 1. `PayerDeviceInfoTypeLocation`
// * **Min Length** - 0 characters
// * **Max Length** - 40 characters
// * **Description** - Coarse location of the payer's device.
// 1. `PayerDeviceInfoTypeOS`
// * **Min Length** - 0 characters
// * **Max Length** - 20 characters
// * **Description** - Operating system on the payer's device.
// 1. `PayerDeviceInfoTypeTelecomProvider`
// * **Min Length** - 0 characters
// * **Max Length** - 99 characters
// * **Description** - Telecom provider for the payer's device.
// 1. `PayerDeviceInfoTypeDeviceType`
// * **Min Length** - 0 characters
// * **Max Length** - 9 characters
// * **Description** - Type of the payer's device. This will be one of
// 'MOB', 'INET', 'USDC/USDB', 'POS'.
// 1. `PayeeDeviceInfoTypeAppName`
// * **Min Length** - 0 characters
// * **Max Length** - 20 characters
// * **Description** - Payment application name on the payee's device.
// 1. `PayeeDeviceInfoTypeCapability`
// * **Min Length** - 0 characters
// * **Max Length** - 99 characters
// * **Description** - Capability of the payee's device.
// 1. `PayeeDeviceInfoTypeGeoCode`
// * **Min Length** - 0 characters
// * **Max Length** - 15 characters
// * **Description** - Geo code of the payee's device. This will include
// floating point values for latitude and longitude (separated by colon).
// 1. `PayeeDeviceInfoTypeID`
// * **Min Length** - 0 characters
// * **Max Length** - 35 characters
// * **Description** - Device ID of the payee's device.
// 1. `PayeeDeviceInfoTypeIP`
// * **Min Length** - 0 characters
// * **Max Length** - 39 characters
// * **Description** - IP address of the payee's device.
// 1. `PayeeDeviceInfoTypeLocation`
// * **Min Length** - 0 characters
// * **Max Length** - 40 characters
// * **Description** - Coarse location of the payee's device.
// 1. `PayeeDeviceInfoTypeOS`
// * **Min Length** - 0 characters
// * **Max Length** - 20 characters
// * **Description** - Operating system on the payee's device.
// 1. `PayeeDeviceInfoTypeTelecomProvider`
// * **Min Length** - 0 characters
// * **Max Length** - 99 characters
// * **Description** - Telecom provider for the payee's device.
// 1. `PayeeDeviceInfoTypeDeviceType`
// * **Min Length** - 0 characters
// * **Max Length** - 9 characters
// * **Description** - Type of the payee's device. This will be one of
// `MOB`, `INET`, `USDC/USDB`, `POS`.
// 1. `ReferenceID`
// * **Min Length** - 0 characters
// * **Max Length** - 35 characters
// * **Description** - Consumer reference number to identify loan number,
// order id etc.
// 1. `ReferenceURI`
// * **Min Length** - 1 characters
// * **Max Length** - 35 characters
// * **Description** - URL for the transaction.
// 1. `ReferenceCategory`
// * **Min Length** - 2 characters
// * **Max Length** - 2 characters
// * **Description** - Reference category.
rpc ExportMandateTransactions(ExportMandateTransactionsRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
@ -745,6 +886,9 @@ message TransactionInfo {
// Output only. The purpose code of this API transaction. In UPI, the values
// are as defined by the UPI API specification.
string purpose_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The reference category of this API transaction.
string reference_category = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// All details about any error in the processing of an API transaction.
@ -992,59 +1136,46 @@ message MandateTransaction {
// Output only. This maps to Unique Mandate Number (UMN) in UPI specification.
string unique_mandate_number = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The virtual payment address (VPA) of the payer.
string payer_vpa = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The virtual payment address (VPA) of the payee.
string payee_vpa = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. A unique identifier for merchant.
string payee_merchant_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The mobile number of the payer consisting of total twelve
// digits where first two digits of country code (for eg. 91 for India) and
// then ten digits mobile number. For eg. 911234567890
string payer_mobile_number = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The payer in the transaction.
SettlementParticipant payer = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The mobile number of the payer consisting of total twelve
// digits where first two digits of country code (for eg. 91 for India) and
// then ten digits mobile number. For eg. 911234567890
string payee_mobile_number = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The payee in the transaction.
SettlementParticipant payee = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The type of recurrence pattern of the mandate.
RecurrencePatternType recurrence_pattern = 9
RecurrencePatternType recurrence_pattern = 6
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The type of recurrence rule of the mandate.
RecurrenceRuleType recurrence_rule_type = 10
RecurrenceRuleType recurrence_rule_type = 7
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The recurrence rule value of the mandate. This is a value from
// 1 to 31.
int32 recurrence_rule_value = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
int32 recurrence_rule_value = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The start date of the mandate.
google.type.Date start_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
google.type.Date start_date = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The end date of the mandate.
google.type.Date end_date = 13 [(google.api.field_behavior) = OUTPUT_ONLY];
google.type.Date end_date = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. If true, this specifies mandate can be revoked.
bool revokable = 14 [(google.api.field_behavior) = OUTPUT_ONLY];
bool revokable = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The amount of the mandate.
double amount = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
double amount = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The amount rule type of the mandate.
AmountRuleType amount_rule = 16 [(google.api.field_behavior) = OUTPUT_ONLY];
AmountRuleType amount_rule = 13 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The Block funds reference generated by the bank, this will be
// available only when Recurrence is ONETIME.
string approval_reference = 17 [(google.api.field_behavior) = OUTPUT_ONLY];
string approval_reference = 14 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. If true, this specifies the mandate transaction requested
// funds to be blocked.
bool block_funds = 18 [(google.api.field_behavior) = OUTPUT_ONLY];
bool block_funds = 15 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// A complaint API transaction processed by the issuer switch. In
@ -1123,21 +1254,10 @@ message ListMetadataTransactionsRequest {
// values. Allowed comparison operators: `=`.
// * `transactionID` - The UPI transaction ID of the metadata transaction.
// Allowed comparison operators: `=`.
// * `originVPA` - The VPA of the originator of a metadata transaction.
// Allowed comparison operators: `=`.
// * `createTime` - The time at which the transaction was created
// (received) by the issuer switch. The value should be in
// the format `YYYY-MM-DDTHH:MM:SSZ`. Allowed comparison operators: `>`,
// `<`.
// * `state` - The state of the transaction. Must be one of
// [TransactionInfo.State][google.cloud.paymentgateway.issuerswitch.v1.TransactionInfo.State]
// values. Allowed comparison operators: `=`.
// * `errorCode` - Use this filter to list financial transactions which
// have failed a particular error code. Allowed comparison operators:
// `=`.
// * `adapterRequestID` - Adapter request ID used when invoking the Bank or
// Card Adapter API for fulfilling a transaction request. Allowed comparison
// operators: `=`.
//
// You can combine multiple expressions by enclosing each expression in
// parentheses. Expressions are combined with AND logic. No other logical
@ -1274,37 +1394,10 @@ message ListMandateTransactionsRequest {
// values. For mandate transactions, only valid transaction types are
// `TRANSACTION_TYPE_CREATE`, `TRANSACTION_TYPE_REVOKE` and
// `TRANSACTION_TYPE_UPDATE`. Allowed comparison operators: `=`.
// * `payerVPA` - The VPA of the payer in a mandate transaction. Allowed
// comparison operators: `=`.
// * `payeeVPA` - The VPA of the payee in a mandate transaction. Allowed
// comparison operators: `=`.
// * `payeeMerchantID` - The merchant ID of the payee in a mandate
// transaction. Allowed comparison operators: `=`.
// * `payerMobileNumber` - The mobile number of the payer in a mandate
// transaction. Allowed comparison operators: `=`.
// * `payeeMobileNumber` - The mobile number of the payee in a mandate
// transaction. Allowed comparison operators: `=`.
// * `createTime` - The time at which the transaction was created
// (received) by the issuer switch. The value should be in
// the format `YYYY-MM-DDTHH:MM:SSZ`. Allowed comparison
// operators: `>`, `<`.
// * `state` - The state of the transaction. Must be one of
// [TransactionInfo.State][google.cloud.paymentgateway.issuerswitch.v1.TransactionInfo.State]
// values. Allowed comparison operators: `=`.
// * `recurrencePattern` - The recurrence pattern of the mandate. Must be
// one of
// [MandateTransaction.RecurrencePatternType][google.cloud.paymentgateway.issuerswitch.v1.MandateTransaction.RecurrencePatternType]
// values. Allowed comparison operators: `=`.
// * `startDate` - The start date of the mandate. The value should be in
// the format `YYYY-MM-DD`. Allowed comparison operators: `<` and `>`.
// * `endDate` - The end date of the mandate. The value should be in
// the format `YYYY-MM-DD`. Allowed comparison operators: `<` and `>`.
// * `errorCode` - Use this filter to list mandate transactions which
// have failed a particular error code. Allowed comparison
// operators: `=`.
// * `adapterRequestID` - Adapter request ID used when invoking the Bank or
// Card Adapter API for fulfilling a transaction request. Allowed comparison
// operators: `=`.
// You can combine multiple expressions by enclosing each expression in
// parentheses. Expressions are combined with AND logic. No other logical
// operators are supported.

Loading…
Cancel
Save