Encapsulate the configuration of the Google VAS terminal. More...
Classes | |
class | CapabilitiesDetails |
Details of the terminal capabilities. More... | |
class | RequestDetails |
Details of a request. More... | |
Public Member Functions | |
bool | IsValid () |
Return true if the minimal settings have been populated. | |
void | Validate () |
Load configuration and private key. Must be called after any change of the configuration. | |
object | GetFieldValue (string Name) |
Helper to access on the properties dynamically (read) | |
void | SetFieldValue (string Name, object Value) |
Helper to access on the properties dynamically (write) | |
void | LoadFromJson (IConfigReader configReader) |
Load the configuration from a JSON config file to a GoogleVasConfig object. | |
void | Save (IConfigWriter configWriter) |
Save configuration to a file or a register. | |
void | Load (IConfigReader configReader) |
Load configuration. | |
Static Public Member Functions | |
static byte [] | GetCapabilitiesByteArray (GoogleVasConfig config) |
Get an array of 5 bytes representing the Capabilities configured in the terminal. | |
static List< GoogleVasServiceType > | GetServiceListToRequest (GoogleVasConfig config) |
Get a list of types to request in the Get Data command. | |
static GoogleVasConfig | LoadFromJsonFile (string FileName) |
Load a configuration from a JSON file (using the format of Google-provided test Terminal App) | |
static bool | SaveToSpringCoreConfigFile (GoogleVasConfig config, string fileName) |
Save config object to file in multiconf format (for SpringCore device) | |
static GoogleVasConfig | GoogleDemo () |
Load SpringCard's default test configuration. | |
static GoogleVasConfig | SpringCardDemo () |
Load SpringCard's default test configuration. | |
Public Attributes | |
bool | UseOSE |
Use OSE command. | |
bool | AllowSkippingSmartTap2Select |
Allow skipping Smart Tap 2 select. | |
ushort | SmartTapVersion |
The version used in NDEF request records (0x0000 for v2.0, 0x0001 for v2.1, 0x0002 for v2.2) | |
bool | DoPayment |
Request payment. | |
bool | SplitValuablesConnectionFromPayment |
Payment : Split valuables connection from payment. | |
bool | StopPaymentIfSmartTapFails |
Payment : Stop payment if smart tap fails. | |
byte [] | CollectorId |
Merchant's Collector ID. | |
byte [] | LocationId |
Location ID. | |
byte [] | TerminalId |
Terminal ID. | |
string | MerchantName |
Merchant name. | |
ushort | MerchantCategoryCode |
Merchant category code MCC on 2 bytes instead of 4 https://github.com/greggles/mcc-codes. | |
bool | UseEncryption |
bool | PresignedAuth |
bool | UseSecureElement = false |
byte [] | LongTermPrivateKey |
byte | LongTermPrivateKeyIndex |
uint | LongTermKeyVersion |
byte [] | ForceTerminalNonce |
byte [] | ForceTerminalEphemeralPrivateKey |
bool | DoRequest |
Send valuables request. See RequestDetails for details. | |
RequestDetails | Request |
Details of the request. | |
bool | DoPush |
Push back data. See PushDetails for details. | |
CapabilitiesDetails | Capabilities |
Details of the terminal capabilities. | |
Properties | |
byte [] | CollectorId_4 [get] |
Merchant's Collector ID, truncated or padded to 4 bytes exactly. | |
Encapsulate the configuration of the Google VAS terminal.
byte [] SpringCard.GoogleVas.GoogleVasConfig.ForceTerminalEphemeralPrivateKey |
Force terminal ephemeral private key (must be empty for random private keys)
byte [] SpringCard.GoogleVas.GoogleVasConfig.ForceTerminalNonce |
Force terminal nonce (must be empty for random nonces)
uint SpringCard.GoogleVas.GoogleVasConfig.LongTermKeyVersion |
Long term key pair version
byte [] SpringCard.GoogleVas.GoogleVasConfig.LongTermPrivateKey |
Long term private key
byte SpringCard.GoogleVas.GoogleVasConfig.LongTermPrivateKeyIndex |
Long term private key index inside the device's secure element
bool SpringCard.GoogleVas.GoogleVasConfig.PresignedAuth |
Use presigned authentication
bool SpringCard.GoogleVas.GoogleVasConfig.UseEncryption |
Use encryption
bool SpringCard.GoogleVas.GoogleVasConfig.UseSecureElement = false |
If this field is set to true and the device has a Secure element the field LongTermPrivateKeyIndex will be used instead of LongTermPrivateKey