SpiceLogic Privacy Policy

Financial Information and Security Policy

  • We never store a customer's credit card number on our server for any reason. If you need to purchase another product from our site, you will need to reenter your credit card information again.
  • We use SSL for the entire website.
  • We store customers' password as hash in our database, so no employee can see the plain text password of any users.
  • Our Payment Gateway is PayPal, so any transaction you make on our site is secured by PayPal.

Desktop Software Policy

  • Unless the product is delivered as a Zip file or a Stand-alone tool, all of our software products come with an Installer and Uninstaller. If our product registers any file extension, our uninstaller will remove that extension from your computer’s registry.
  • When uninstalling a product, our uninstaller may open our Feedback webpage, and request information from you about your experience using our software products.
  • For the desktop software (Not the .NET DLL Components), we may collect software usage data, like feature usages so that we can focus on improving the useful features more often. The user can turn off sharing such diagnostics data from the software (Settings menu).
  • For the desktop software (Not the .NET DLL Components), based on the user's consent, we may collect software crash event data, so that we can fix the error in the next version of our software.
  • For the desktop software (Not the .NET DLL Components), the software may periodically check for a new updated version and notify you (as a user) about the update. The user may wish to update to the new version or the user may choose to use the installed version. The user may turn off such periodic software update check (from the update checker screen) so that the software won't check for update from the next time.
  • From the desktop software, the user can submit feedback, and when the user does so, we may collect some basic anonymous data.
Here is a sample of Telemetry data that we collect from our Decision Analysis software like Rational Will, Decision tree software, AHP software etc. This sample shows that the user performed some steps and then the software crash. The log contains details about the crash. Notice that, our telemetry does not collect any text that the user entered into the software. That means, we will not know anything at all about your working project. If you still have a problem with such data sharing, such data sharing can be completely turned off from the Settings menu. Please note that, if the software crashes, you will see a window requesting you to report the crash. If you click the REPORT CRASH button from that window, then the same log will be submitted to us. As it will be obvious at that point that the user wants to REPORT the crash.
[START LOG]
2022-01-31 15:54:54,690 [1] INFO - Analytic Hierarchy Process : 3.4.1, (Culture: en-GB) Session started [Session ID - YYYYYYYY]
2022-01-31 15:54:56,208 [1] INFO - Window for the Analytic Hierarchy Process loaded.
2022-01-31 15:54:56,212 [1] INFO - Application loaded with a Project file path argument.
2022-01-31 15:54:56,269 [1] INFO - [Opening Project] -
2022-01-31 15:54:56,273 [1] INFO - Checking license and version update for ahpsoftware
2022-01-31 15:54:56,757 [4] INFO - The product is not a freeware
2022-01-31 15:54:56,760 [4] INFO - The app is licensed. License Key : XXXXXXXXXXXXX (We collect the real license key used so that we can communicate back to the user if a crash happened. I just masked here because it is private info of another user.)
2022-01-31 15:54:59,495 [4] INFO - Session start reported. Result - Success.
2022-01-31 15:54:59,496 [4] INFO - Update was already checked today. So, skipping the update check.
2022-01-31 15:55:06,176 [1] INFO - Save As button clicked
2022-01-31 15:55:28,792 [6] INFO - [Saving project] -
2022-01-31 15:55:30,458 [1] INFO - Window state is changed to Maximized
2022-01-31 17:03:31,388 [1] INFO - Window state is changed to Minimized
2022-01-31 22:18:04,209 [1] INFO - Window state is changed to Maximized
2022-01-31 22:18:30,773 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:19:19,913 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:19:33,839 [1] INFO - Wizard is for AHP, therefore, subjective type objective will be added on Proceed click.
2022-01-31 22:19:42,642 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:20:05,877 [1] INFO - Wizard is for AHP, therefore, subjective type objective will be added on Proceed click.
2022-01-31 22:20:08,515 [1] INFO - Yes - Add another objective
2022-01-31 22:20:08,515 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:20:33,108 [1] INFO - Wizard is for AHP, therefore, subjective type objective will be added on Proceed click.
2022-01-31 22:20:34,461 [1] INFO - Yes - Add another objective
2022-01-31 22:20:34,462 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:21:00,829 [1] INFO - Wizard is for AHP, therefore, subjective type objective will be added on Proceed click.
2022-01-31 22:21:05,272 [1] INFO - Yes - Add another objective
2022-01-31 22:21:05,272 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:21:13,713 [1] INFO - Wizard is for AHP, therefore, subjective type objective will be added on Proceed click.
2022-01-31 22:21:20,764 [1] INFO - Yes - Add another objective
2022-01-31 22:21:20,765 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:21:27,956 [1] INFO - Wizard is for AHP, therefore, subjective type objective will be added on Proceed click.
2022-01-31 22:22:31,502 [1] INFO - Selected Objective Goal - Maximize
2022-01-31 22:22:39,029 [1] INFO - Wizard is for AHP, therefore, subjective type objective will be added on Proceed click.
2022-01-31 22:22:39,227 [1] FATAL - Unhandled Exception - ExceptionSource: [mscorlib]
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: Sequence contains no matching element
at System.Linq.Enumerable.Single[TSource](IEnumerable`1 source, Func`2 predicate)
at AnalyticHierarchyProcess.ViewModels.ObjectiveDiagramViewModel.removeNodesForDeletedObjectives()
at AnalyticHierarchyProcess.ViewModels.ObjectiveDiagramViewModel.UpdateDiagramWithChangeInObjective(String oldName, ObjectiveModel objectiveModel)
at SharedViews.ViewModels.ViewModels.Objective.ObjectiveViewModel.AddNewObjectiveForAHP(ObjectiveModel objective)
at SharedViews.ViewModels.ViewModels.ObjectiveWizard.WizardViewModel.addNewObjective(ObjectiveModel objective, AttributeTypes attributeType, IAttributeViewModel attributeViewModel)
at SharedViews.ViewModels.ViewModels.ObjectiveWizard.AddObjectiveViewModel.addSubjectiveType()
at SharedViews.ViewModels.ViewModels.ObjectiveWizard.AddObjectiveViewModel.OnProceedClick()
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at FrameworkExtensions.MVVMCore.WeakAction.Execute()
at FrameworkExtensions.MVVMCore.RelayCommand.Execute(Object parameter)
at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(ICommandSource commandSource, Boolean userInitiated)
at System.Windows.Controls.Primitives.ButtonBase.OnClick()
at System.Windows.Controls.Button.OnClick()
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean&s; handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean&s; handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean&s; handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
2022-01-31 22:22:46,853 [1] INFO - Quit button clicked on the Error Reporting window.
2022-01-31 22:22:46,879 [18] INFO - [Saving project] -
2022-01-31 22:22:46,977 [1] INFO - Application Shut Down from User Request
Reporting Crash
If the software crashes for any reason, you will see a window requesting to report the crash. If you click the report button, the software will submit all the details about the crash (the usage log). Also that point, the software will create a copy of your working project and submit to our server so that we can reproduce the issue. At that point, we will have knowledge about your working project. If you have concern about that data sharing, then you may skip reporting a crash.

Use of Personal/Anonymous Data

Personal Data
“Personal Data” means data that allows someone to identify or contact you, including, your name, phone number, physical address, credit card information, and email address etc.
Anonymous Data
“Anonymous Data” means data about you that is not associated with or linked to your Personal Data;
  • When you access the Site, register, purchase, download trial or evaluation versions of our software, we may collect Personal Data and Anonymous Data from you for the purpose of recording the transaction.
  • To make our website, products and Services more useful to you, we may collect Anonymous Data from you, such as browser type, operating system, Internet Protocol IP address, domain name, and/or a date/time stamp for your visit. We may also use Cookies for making sure that you can purchase the product or login to our site to submit a technical support ticket.
Changes to This Privacy Policy
We reserve the right, in our sole discretion, to modify, update and change this Privacy Policy from time to time without prior notice to you.