common.v2.bank
io.token.proto.common.v2.bank common/src/main/proto/v2/bank.proto
syntax = "proto3";
package io.token.proto.common.v2.bank;
option java_outer_classname = "BankV2Protos";
import "bankinfo.proto";
import "providerspecific.proto";
import "v2/common.proto";
message Bank {
string id = 1;
string bic = 2;
string name = 3;
string logo_uri = 4; // Square bank avatar icon
string bank_group = 5; // Bank group name if bank is member of one.
repeated string countries = 6; // List of ISO 3166-1 alpha-2 two letter country codes in upper case.
io.token.proto.common.bank.OpenBankingStandard open_banking_standard = 7; // Optional open banking standard
repeated providerspecific.CredentialField initial_embedded_auth_fields = 8; // List of fields required for authorization.
repeated MandatoryFieldV2 mandatory_fields = 9; // List of fields required in the initiation.
repeated io.token.proto.common.bank.FieldFormatInformation fields_format_information = 10;
// AIS
bool supports_account_list = 12; // Connection allows for retrieval of accounts
bool supports_account_details = 13; // Connection allows for retrieval of account's details
bool supports_account_balance = 14; // Connection allows for retrieval of account's balance
bool supports_transaction_list = 15; // Connection allows for retrieval of account's transactions
bool supports_transaction_details = 16; // Connection allows for retrieval of account's transaction details
bool supports_standing_order_list = 17; // Connection allows for retrieval of account's standing order transactions
bool supports_transactions_date_filter = 18; // Connection allows for retrieval of account's transactions by date filter
bool supports_delete_ais_consent = 35; // Connection allows to delete ais consent
bool supports_unattended_calls_limit = 36; // Connection allows to get unattended calls limit
// PIS
bool requires_one_step_payment = 19; // Connection only supports immediate redemption of payments
repeated v2.common.LocalInstrument supported_local_instruments = 20; // A list of payment network types supported by the bank.
bool supports_single_payment = 21; // Connection supports single payment.
bool supports_scheduled_payment = 22; // Connection supports scheduled payments
bool supports_standing_order = 23; // Connection supports standing orders
bool supports_return_refund_account = 24;
bool supports_return_refund_account_holder_name = 25;
// CAF
bool supports_funds_confirmation = 26; // Connections supports funds confirmation
string operational_time = 27; // bank's operational hours on a normal business day
int32 transaction_history_limit = 28; // limit the number of transaction history to be fetched
// VRP
bool supports_variable_recurring_payment = 29; //Connection supports variable recurring payments
// Other
bool supports_app_to_app_on_ios = 30;
bool supports_app_to_app_on_android = 31;
repeated io.token.proto.common.bank.MaintenanceWindow maintenance_window = 32;
int32 rank = 33; // This will be used to sort banks by the value of rank.
string bank_sub_group = 34;
}
message MandatoryFieldV2 {
repeated Product products = 1; // The products for which the mandatory field applies
repeated string field_paths = 2; // Path to mandatory field in the products initiation request
repeated PaymentType payment_types = 3; // Optional: If mandatory field applies for cross-border and/or same country transfers
repeated v2.common.LocalInstrument local_instruments = 4; // Optional: List of ASPSP's payment services the mandatory field applies for
bool enforced = 5; // Check this field is present during token request validation (default: false)
enum Product {
AIS = 0;
SIP = 1;
VRP = 2;
FDP = 3;
}
enum PaymentType {
INTERNATIONAL = 0;
DOMESTIC = 1;
}
}