Table of Contents
Overview
A TMS update is a procedure NMI's Payment Device SDK carries out automatically every 48 hours in which it pulls down a fresh copy of properties set against the terminal on our platform. At times the user may need to carry out a forced update in order to download recently changed TMS properties and settings. This can be done using the TMS call discussed below.
We mandate that integrators add a method of forcing a TMS update within their integration to ensure any urgent changes can be pulled down as soon as possible.
How to perform a TMS update
A TMS update can be performed by calling the requestTmsUpdate
method. This method takes arguements in the form of a ParameterSet
. The supported ParameterKeys
and their values are:
TmsRequestType
- TmsConfiguration (default)
TmsUpdateType
- Partial (default)
- Full
ConfigurationUpdateSchedule
- Immediate (default)
- MaintenanceTime
Forcing a TMS update
To force an immediate full TMS update, therefore pulling down a copy of all of the latest properties and settings on our platform, please ensure the following ParameterKeys
are set to their respective values within the ParameterSet
before calling RequestTmsUpdate
:
TmsRequestType
= "TmsConfiguration"TmsUpdateType
= "Full"ConfigurationUpdateSchedule
= "Immediate"
An example of how to perform this within the Payment Device SDK in C# can be seen below:
private void ForceTmsUpdate() { var parameter = new ParameterSet(); parameter.Add(ParameterKeys.TmsRequestType, "TmsConfiguration"); parameter.Add(ParameterKeys.TmsUpdateType, "Full"); parameter.Add(ParameterKeys.ConfigurationUpdateSchedule, "Immediate"); parameter.Add(GetExtraParams("RequestTmsUpdate")); var response = clientHelper.RequestTmsUpdate(parameter); string errors; if (response.ContainsKey(ParameterKeys.Errors) && response.GetValue(ParameterKeys.Errors, out errors)) { Console.WriteLine(ErrorsString("RequestTmsConfigUpdate Errors", errors)); } }