using Nop.Core.Configuration; namespace Nop.Plugin.Misc.Zettle; /// /// Represents plugin settings /// public class ZettleSettings : ISettings { /// /// Gets or sets the client identifier /// public string ClientId { get; set; } /// /// Gets or sets the API key /// public string ApiKey { get; set; } /// /// Gets or sets a value indicating whether to disconnect an app from an associated Zettle organisation when the plugin is uninstalled /// public bool DisconnectOnUninstall { get; set; } /// /// Gets or sets a value indicating whether auto synchronization is enabled /// public bool AutoSyncEnabled { get; set; } /// /// Gets or sets a value how often (in minutes) auto synchronization will run /// public int AutoSyncPeriod { get; set; } /// /// Gets or sets a value indicating whether to delete library items before importing products /// public bool DeleteBeforeImport { get; set; } /// /// Gets or sets a value indicating whether to sync products by default /// public bool SyncEnabled { get; set; } /// /// Gets or sets a value indicating whether to sync price for products by default /// public bool PriceSyncEnabled { get; set; } /// /// Gets or sets a value indicating whether to sync images for products by default /// public bool ImageSyncEnabled { get; set; } /// /// Gets or sets a value indicating whether to track inventory for products by default /// public bool InventoryTrackingEnabled { get; set; } /// /// Gets or sets a value indicating whether to import products with default sales tax rate or VAT rate /// public bool DefaultTaxEnabled { get; set; } /// /// Gets or sets a value indicating whether to import discounts (assigned to order subtotal only) /// public bool DiscountSyncEnabled { get; set; } #region Advanced /// /// Gets or sets a webhook URL /// public string WebhookUrl { get; set; } /// /// Gets or sets a webhook key used to verify that all incoming webhook messages originate from the service /// public string WebhookKey { get; set; } /// /// Gets or sets the latest import unique identifier as UUID version 1 /// public string ImportId { get; set; } /// /// Gets or sets the number of products to import in one request (up to 2000 products per request) /// public int ImportProductsNumber { get; set; } /// /// Gets or sets a period (in seconds) before the request times out /// public int? RequestTimeout { get; set; } /// /// Gets or sets a value indicating whether to auto add (by events) records for synchronization /// public bool AutoAddRecordsEnabled { get; set; } /// /// Gets or sets a value indicating whether to log synchronization messages /// public bool LogSyncMessages { get; set; } /// /// Gets or sets a value indicating whether to sync products with categories /// public bool CategorySyncEnabled { get; set; } /// /// Gets or sets a value indicating whether to clear synchronization records when credentials changed. /// If disabled, records will be keep and created in a new app on the first synchronization /// public bool ClearRecordsOnChangeCredentials { get; set; } #endregion }