common.providerspecific

io.token.proto.common.providerspecific common/src/main/proto/providerspecific.proto


syntax = "proto3";
package io.token.proto.common.providerspecific;
option java_outer_classname = "ProviderSpecific";
option csharp_namespace = "Tokenio.Proto.Common.ProviderSpecific";

import "extensions/message.proto";
import "provider/cma9.proto";
import "provider/polishapi.proto";
import "provider/nextgenpsd2.proto";
import "provider/stet.proto";
import "provider/budapestapi.proto";
import "provider/czechapi.proto";
import "provider/slovakapi.proto";

message ProviderAccountDetails {
  oneof details {
    cma9.Cma9AccountDetails cma9_account_details = 1;
    polishapi.PolishApiAccountDetails polish_api_account_details = 2;
    nextgenpsd2.NextGenPsd2AccountDetails next_gen_psd2_account_details = 3;
    stet.StetAccountDetails stet_account_details = 4;
  }
}

message ProviderTransactionDetails {
  oneof details {
    polishapi.PolishApiTransactionDetails polish_api_transaction_details = 1;
    cma9.Cma9ApiTransactionDetails cma9_api_transaction_details = 2;
    nextgenpsd2.NextGenPsd2TransactionDetails next_gen_psd2_transaction_details = 3;
    stet.StetTransactionDetails stet_transaction_details = 4;
    budapestapi.BudapestApiTransactionDetails budapest_api_transaction_details = 5;
    czechapi.CzechApiTransactionDetails czech_api_transaction_details = 6;
    slovakapi.SlovakApiTransactionDetails slovak_api_transaction_details = 7;
  }
}

message ProviderStandingOrderDetails {
  oneof details {
    cma9.Cma9StandingOrderDetails cma9_standing_order_details = 1;
  }
}

message ProviderTransferDetails {
  string id = 1;
  string status = 2;
}

message ProviderStandingOrderSubmissionDetails {
  string id = 1;
  string status = 2;
}

message ProviderTransferMetadata {
  oneof metadata {
    polishapi.PolishApiTransferMetadata polish_api_transfer_metadata = 1;
    nextgenpsd2.NextGenPsd2TransferMetadata next_gen_psd2_transfer_metadata = 2;
    stet.StetTransferMetadata stet_transfer_metadata = 3;
    cma9.Cma9TransferMetadata cma9_transfer_metadata = 4;
  }
}

message ProviderStandingOrderMetadata {
  oneof metadata {
    cma9.Cma9StandingOrderMetadata cma9_standing_order_metadata = 1;
    polishapi.PolishApiStandingOrderMetadata polishapi_standing_order_metadata = 2;
    nextgenpsd2.NextGenPsd2StandingOrderMetadata next_gen_psd2_standing_order_metadata = 3;
    stet.StetStandingOrderMetadata stet_standing_order_metadata = 4;
  }
}

// Used in embedded auth flows
message CredentialField {
  string id = 1; // ID to be used when passing the value of this credential
  string display_name = 2; // display name of the credential
  repeated string options = 3; // optional; used when there is a selection of options, e.g. SMS message, phone call
  bool password = 4 [deprecated=true]; // whether the credential is a password, replaced by type.password
  string description = 5;
  Type type = 6;
  string image = 7; // base64 representation of an image
  string flicker_code = 8; // code to represent a flicker

  enum Type {
    INVALID = 0;
    FIELD = 1; // an input field
    PASSWORD = 2; // a password input field
    PSU_MESSAGE = 3; // a message to be presented to the PSU
    IMAGE = 4; // a image to be presented to PSU for authentication
    FLICKER = 5; // a flicker to be presented to PSU for authentication
    DECOUPLED = 6; // a decoupled message to be presented to PSU
    CONFIRMATION = 7; // a confirmation page need to be presented to PSU
  }
}

enum ScaStatus {
  INVALID = 0;
  AUTHENTICATED = 1;
  AUTHENTICATION_FAILED = 2;
  DECLINED_BY_PSU = 3;
}