iOS SDK - Preference Module

Use the endpoints of this module to retrieve the issuer's configurations for default app behavior.

Initialize Preference Facade

Prior to invoking any preference module endpoints:

  1. Create a new request object for the relevant coordinator.
  2. Implement the delegate for the coordinator to handle responses.
iphone_reference_appAppDelegate *appDelegate = (iphone_reference_appAppDelegate *)[[UIApplication sharedApplication]delegate];
[preferenceCoordinator preferenceDelegate:self]; self.preferenceCoordinator = preferenceCoordinator; preferenceCoordinator.preferenceDelegate = self;


Retrieves the app configurations defined by the issuer.

Element Value
Method Signature -(void)retrievePreferenceDetails;
Success Returns -(void) didFinishRetrievingPreferenceInformation:(PDPreference*)preference;

preference - Contains the issuer preference property settings.
Failure Returns preferenceInformationInvocationDidFail(PDPaydiantError*)preferenceError;
The call was unable to reach the host.

retrievingPreferenceInformationDidFail:(PDPaydiantError *)preferenceError; - The configuration settings could not be retrieved.

authenticationDidFail:(PDPaydiantError *)authenticationFailedError;
The user must be logged in to make this call.

Note: This method returns different delegate methods for relevant failure conditions.

Configure user error messages for this call with the key kUserErrorPreferenceInfoDomain.

Best Practices

At this time, the only configuration value returned in this call is sessionTimeout, which represents the issuer's specification for the maximum number of minutes allowed for a single login session. If the app allows the user to explicitly override the issuer's default value for this property, consider the following best practices:

  • Do not allow the user to exceed the sessionTimeout value set by the issuer. The issuer setting represents the maximum login allowed, so the session will expire at this time even if the user has specified a longer limit.
  • If the user sets a sessionTimeout that is shorter than the default, the app must invoke the Logout method upon expiration of the user's timeout and revert to the Login screen of the app to login. Otherwise, the session will remain active until the issuer-configured expiration is triggered.