Tokenization Parameters

  • Parameters describing textfield input tokenization.

    See more

    Declaration

    Swift

    @MainActor
    public protocol VGSTokenizationParametersProtocol
  • VGSCVCTokenizationParameters - parameters required for tokenization api.

    Summary: Defines how CVC input is tokenized when using Vault tokenization APIs.

    Properties:

    • storage: Vault storage type. Defaults to volatile (VOLATILE) to avoid persisting raw token beyond session scope.
    • format: Alias format applied to the tokenized value. Default is NUM_LENGTH_PRESERVING (keeps length characteristics without exposing original digits).

    Usage:

    var params = VGSCVCTokenizationParameters()
    params.format = VGSVaultAliasFormat.NUM_LENGTH_PRESERVING.rawValue // or other supported format
    let cfg = VGSCVCTokenizationConfiguration(collector: collector, fieldName: "card_cvc")
    cfg.tokenizationParameters = params
    cvcField.configuration = cfg
    

    Notes:

    • Choose volatile storage for high-sensitivity short-lived values like CVC.
    • Format changes affect alias representation only, not validation rules.
    See more

    Declaration

    Swift

    @MainActor
    public struct VGSCVCTokenizationParameters : VGSTokenizationParametersProtocol
  • VGSCardHolderNameTokenizationParameters - parameters required for tokenization api.

    See more

    Declaration

    Swift

    @MainActor
    public struct VGSCardHolderNameTokenizationParameters : VGSTokenizationParametersProtocol
  • VGSCardNumberTokenizationParameters - parameters required for tokenization API.

    Summary: Defines how primary account number (PAN) input (FieldType .cardNumber) is transformed into an alias for Vault tokenization / alias creation APIs.

    Properties:

    • storage: Vault storage type. Uses .PERSISTENT by default to enable downstream reuse in PCI compliant flows (e.g. recurring billing).
    • format: Alias format. Default FPE_SIX_T_FOUR preserves first six (BIN) + last four digits while protecting the middle digits.

    Usage:

    var cardParams = VGSCardNumberTokenizationParameters()
    cardParams.format = VGSVaultAliasFormat.FPE_SIX_T_FOUR.rawValue // or a fully opaque format e.g. UUID
    let cardCfg = VGSCardNumberTokenizationConfiguration(collector: collector, fieldName: "card_number")
    cardCfg.tokenizationParameters = cardParams
    cardField.configuration = cardCfg
    

    Notes:

    • Choose a fully opaque format (e.g. UUID) when BIN + last4 are not required in client logic.
    • Format affects alias output only; validation (length, Luhn) controlled via rules / field type.
    See more

    Declaration

    Swift

    @MainActor
    public struct VGSCardNumberTokenizationParameters : VGSTokenizationParametersProtocol
  • VGSDateTokenizationParameters - parameters required for tokenization API

    Summary: Defines how generic date input (FieldType .date) is tokenized when using Vault tokenization or alias creation APIs.

    Properties:

    • storage: Vault storage type used for the alias. Defaults to persistent storage — change only if compliance requires ephemeral handling.
    • format: Alias format applied to the date value (default .UUID). Does not alter user-visible formatting.

    Usage:

    var params = VGSDateTokenizationParameters()
    params.format = VGSVaultAliasFormat.UUID.rawValue // or other supported alias format
    let dateCfg = VGSDateTokenizationConfiguration(collector: collector, fieldName: "start_date")
    dateCfg.tokenizationParameters = params
    dateField.configuration = dateCfg
    

    Notes:

    • Changing format influences only alias representation, not validation or display.
    • Keep date parsing/format validation separate via validationRules and formatPattern.
    See more

    Declaration

    Swift

    @MainActor
    public struct VGSDateTokenizationParameters : VGSTokenizationParametersProtocol
  • VGSExpDateTokenizationParameters - parameters required for tokenization api.

    Summary: Defines how card expiration date input (FieldType .expDate) is tokenized when using Vault tokenization or alias creation APIs.

    Properties:

    • storage: Vault storage type. Persistent by default to allow alias reuse server-side.
    • format: Alias format applied to the expiration value. Default .UUID creates opaque aliases.

    Usage:

    var params = VGSExpDateTokenizationParameters()
    params.format = VGSVaultAliasFormat.UUID.rawValue // or FPE / numeric-preserving format
    let expCfg = VGSExpDateTokenizationConfiguration(collector: collector, fieldName: "card_exp")
    expCfg.tokenizationParameters = params
    expField.configuration = expCfg
    

    Notes:

    • Format affects alias representation only, not validation or formatting in the UI.
    • Keep raw MM/YY or MM/YYYY formatting logic in formatPattern and date validation via rules (VGSValidationRuleCardExpirationDate).
    See more

    Declaration

    Swift

    @MainActor
    public struct VGSExpDateTokenizationParameters : VGSTokenizationParametersProtocol
  • VGSSSNTokenizationParameters - parameters required for tokenization api.

    Summary: Defines how US Social Security Number input (FieldType .ssn) is transformed into an alias when using Vault tokenization or alias creation APIs.

    Properties:

    • storage: Vault storage type (persistent by default for reuse on backend workflows).
    • format: Alias format representation (default .UUID ensures fully opaque alias value).

    Usage:

    var ssnParams = VGSSSNTokenizationParameters()
    ssnParams.format = VGSVaultAliasFormat.UUID.rawValue // or another supported alias format
    let ssnCfg = VGSSSNTokenizationConfiguration(collector: collector, fieldName: "user_ssn")
    ssnCfg.tokenizationParameters = ssnParams
    ssnField.configuration = ssnCfg
    

    Notes:

    • Changing format impacts only alias output, not validation or masking.
    • Keep SSN input formatting & validation in formatPattern and rule set (VGSValidationRulePattern).
    See more

    Declaration

    Swift

    @MainActor
    public struct VGSSSNTokenizationParameters : VGSTokenizationParametersProtocol
  • VGSTokenizationParameters - parameters required for tokenization API.

    Summary: Defines generic tokenization settings for fields that do not have a specialized tokenization configuration (e.g. custom text, card holder name, miscellaneous identifiers).

    Properties:

    • storage: Vault storage type. Defaults to .PERSISTENT enabling server-side reuse. Switch to .VOLATILE only if value must not persist (e.g. ephemeral session identifiers).
    • format: Alias format. Default .UUID produces an opaque, non-reversible alias appropriate for most free-form text values.

    Usage:

    var genericParams = VGSTokenizationParameters()
    genericParams.format = VGSVaultAliasFormat.UUID.rawValue // or another supported format
    let holderCfg = VGSTokenizationConfiguration(collector: collector, fieldName: "card_holder")
    holderCfg.tokenizationParameters = genericParams
    nameField.configuration = holderCfg
    

    Notes:

    • Changing format affects alias representation only, not validation or field UI formatting.
    • Prefer specialized configurations (e.g. VGSCardNumberTokenizationConfiguration) for field types with domain-specific alias requirements.
    See more

    Declaration

    Swift

    @MainActor
    public struct VGSTokenizationParameters : VGSTokenizationParametersProtocol
  • Type of Alias format. Read more about avaliable formats: https://www.verygoodsecurity.com/docs/terminology/nomenclature#alias-formats .

    See more

    Declaration

    Swift

    public enum VGSVaultAliasFormat : String, Sendable
  • Type of VGS Vault storage.

    See more

    Declaration

    Swift

    public enum VGSVaultStorageType : String, Sendable