diff --git a/google/cloud/paymentgateway/issuerswitch/v1/BUILD.bazel b/google/cloud/paymentgateway/issuerswitch/v1/BUILD.bazel index f91279f82..358587cc7 100644 --- a/google/cloud/paymentgateway/issuerswitch/v1/BUILD.bazel +++ b/google/cloud/paymentgateway/issuerswitch/v1/BUILD.bazel @@ -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"], ) diff --git a/google/cloud/paymentgateway/issuerswitch/v1/common_fields.proto b/google/cloud/paymentgateway/issuerswitch/v1/common_fields.proto index 8da39290e..fddafe21d 100644 --- a/google/cloud/paymentgateway/issuerswitch/v1/common_fields.proto +++ b/google/cloud/paymentgateway/issuerswitch/v1/common_fields.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; diff --git a/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_grpc_service_config.json b/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_grpc_service_config.json index 74eac1aab..d835d386f 100644 --- a/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_grpc_service_config.json +++ b/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_grpc_service_config.json @@ -10,6 +10,9 @@ }, { "service": "google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchResolutions" + }, + { + "service": "google.cloud.paymentgateway.issuerswitch.v1.IssuerSwitchParticipants" } ], "timeout": "60s", diff --git a/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_v1.yaml b/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_v1.yaml index c60169f81..eada14423 100644 --- a/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_v1.yaml +++ b/google/cloud/paymentgateway/issuerswitch/v1/issuerswitch_v1.yaml @@ -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: |- diff --git a/google/cloud/paymentgateway/issuerswitch/v1/participants.proto b/google/cloud/paymentgateway/issuerswitch/v1/participants.proto new file mode 100644 index 000000000..07cbd11cb --- /dev/null +++ b/google/cloud/paymentgateway/issuerswitch/v1/participants.proto @@ -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 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]; +} diff --git a/google/cloud/paymentgateway/issuerswitch/v1/transactions.proto b/google/cloud/paymentgateway/issuerswitch/v1/transactions.proto index e86aea405..4dccdb0ea 100644 --- a/google/cloud/paymentgateway/issuerswitch/v1/transactions.proto +++ b/google/cloud/paymentgateway/issuerswitch/v1/transactions.proto @@ -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.