Tokenization Parameters
-
Parameters describing textfield input tokenization.
See moreDeclaration
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 isNUM_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 = cfgNotes:
- Choose volatile storage for high-sensitivity short-lived values like CVC.
- Format changes affect alias representation only, not validation rules.
Declaration
Swift
@MainActor public struct VGSCVCTokenizationParameters : VGSTokenizationParametersProtocol -
See moreVGSCardHolderNameTokenizationParameters- parameters required for tokenization api.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.PERSISTENTby default to enable downstream reuse in PCI compliant flows (e.g. recurring billing).format: Alias format. DefaultFPE_SIX_T_FOURpreserves 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 = cardCfgNotes:
- 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.
Declaration
Swift
@MainActor public struct VGSCardNumberTokenizationParameters : VGSTokenizationParametersProtocol -
VGSDateTokenizationParameters- parameters required for tokenization APISummary: 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 = dateCfgNotes:
- Changing
formatinfluences only alias representation, not validation or display. - Keep date parsing/format validation separate via
validationRulesandformatPattern.
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.UUIDcreates 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 = expCfgNotes:
- Format affects alias representation only, not validation or formatting in the UI.
- Keep raw MM/YY or MM/YYYY formatting logic in
formatPatternand date validation via rules (VGSValidationRuleCardExpirationDate).
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.UUIDensures 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 = ssnCfgNotes:
- Changing
formatimpacts only alias output, not validation or masking. - Keep SSN input formatting & validation in
formatPatternand rule set (VGSValidationRulePattern).
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.PERSISTENTenabling server-side reuse. Switch to.VOLATILEonly if value must not persist (e.g. ephemeral session identifiers).format: Alias format. Default.UUIDproduces 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 = holderCfgNotes:
- Changing
formataffects alias representation only, not validation or field UI formatting. - Prefer specialized configurations (e.g.
VGSCardNumberTokenizationConfiguration) for field types with domain-specific alias requirements.
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 moreDeclaration
Swift
public enum VGSVaultAliasFormat : String, Sendable -
Type of VGS Vault storage.
See moreDeclaration
Swift
public enum VGSVaultStorageType : String, Sendable
View on GitHub
Tokenization Parameters Reference