common.providerspecific.nextgenpsd2
io.token.proto.common.providerspecific.nextgenpsd2 common/src/main/proto/provider/nextgenpsd2.proto
syntax = "proto3";
package io.token.proto.common.providerspecific.nextgenpsd2;
option java_outer_classname = "NextGenPsd2";
option csharp_namespace = "Tokenio.Proto.Common.ProviderSpecific.NextGenPsd2";
import "extensions/field.proto";
import "extensions/message.proto";
message NextGenPsd2AccountDetails {
option (io.token.proto.extensions.message.redact) = true;
string iban = 1 [deprecated = true]; // use AccountDetails.AccountIdentifier.Iban
string bban = 2 [deprecated = true]; // use AccountDetails.AccountIdentifier.Bban
string msisdn = 3 [deprecated = true]; // use AccountDetails.AccountIdentifier.Msisdn
string currency = 4;
string product = 5;
string cash_account_type = 6; // ExternalCashAccountType1Code from ISO 20022.
string bic = 7 [deprecated = true]; // use AccountDetails.bic field
string linked_accounts = 8;
string usuage = 9 [deprecated = true]; // use usage field
string details = 10 [(io.token.proto.extensions.field.redact) = true];
string usage = 11;
}
message NextGenPsd2TransactionDetails {
string entry_reference = 1; // Is the identification of the transaction as used e.g. for reference for deltafunction on application level. The same identification as for example used within camt.05x messages.
string end_to_end_id = 2;
string mandate_id = 3;
string check_id = 4;
string creditor_id = 5;
string value_date = 6;
repeated ReportExchangeRate currency_exchange = 7;
string creditor_name = 8 [(io.token.proto.extensions.field.redact) = true];
AccountReference creditor_account = 9;
string ultimate_creditor = 10 [(io.token.proto.extensions.field.redact) = true];
string debtor_name = 11 [(io.token.proto.extensions.field.redact) = true];
AccountReference debtor_account = 12;
string ultimate_debtor = 13 [(io.token.proto.extensions.field.redact) = true];
string remittance_information_structured = 14;
string additional_information = 15;
string purpose_code = 16; // ExternalPurpose1Code from ISO 20022.
string bank_transaction_code = 17 [deprecated = true]; // Use Transaction.BankTransactionCode.Domain. Bank transaction code as used by the ASPSP and using the sub elements of this structured code defined by ISO 20022.
string proprietary_bank_transaction_code = 18 [deprecated = true]; // Use Transaction.BankTransactionCode.Proprietary. Proprietary bank transaction code as used within a community or within an ASPSP e.g. for MT94x based transaction reports.
}
message NextGenPsd2TransferMetadata {
string end_to_end_identification = 1; // Has specific format requirements in the case of Croatian banks
string remittance_information_structured = 2; // Has specific format requirements in the case of Croatian banks
string creditor_agent = 3; // BICFI, example: AAAADEBBXXX
string creditor_agent_name = 4;
}
message NextGenPsd2StandingOrderMetadata {
string end_to_end_identification = 1; // Has specific format requirements in the case of Croatian banks
string creditor_agent_name = 2;
}
message ReportExchangeRate {
string source_currency = 1;
string exchange_rate = 2;
string unit_currency = 3;
string target_currency = 4;
string quotation_date = 5;
string contract_identification = 6;
}
message AccountReference {
option (io.token.proto.extensions.message.redact) = true;
string iban = 1;
string bban = 2;
string pan = 3;
string masked_pan = 4;
string msisdn = 5;
string currency = 6;
}