Customer Journey / Digital Journey / Onboarding Customers – GBG IDscan Documentation

Customer Journey / Digital Journey / Onboarding Customers

It’s as easy as implementing a listener and calling another activity:
The journey will be done as defined by IEOS Customer Journey configuration.

  • Implement or create an instance of CustomerJourneyEventReceiver implementation.
private CustomerJourneyEventReceiver implementation = new CustomerJourneyEventReceiver() {
	@Override
	public void onJourneyCompleted(Context context, ResponseJourney responseJourney) {
	// Results from Customer Journey
	}
	@Override
	public void onJourneyFailed(Context context, CustomerJourneyError errorCode) {
	// Failed check error object for more information. At the end see possible errorCodes.
	}
	@Override
	public void onJourneyCanceled(Context context, CustomerJourneyError error) {
	// If journey was cancelled, onBack() click event.
	}
};

Kotlin

// Callback interface of Customer journey
private val response: CustomerJourneyEventReceiver = object : CustomerJourneyEventReceiver() {
	/* Called back if customer clicked back or exits Customer Journey. */
	override fun onJourneyCanceled(context: Context, customerJourneyError: CustomerJourneyError) {
	}
	/* Callback if journey was successfully completed. */
	override fun onJourneyCompleted(context: Context, responseJourney: ResponseJourney) {
	}
	/* Callback for failure from witch we dit not succeed to restore our self. */
	override fun onJourneyFailed(context: Context, customerJourneyError: CustomerJourneyError) {
	}
}
  • Register your implementation using

Note: Kotlin register before and unregister after response, as register would create a new instance and not override the old.

// Register before call CustomerJourneyService.registerEventReceiver(context, implementation);

// Unregister after call CustomerJourneyService.unregisterEventReceiver(context, implementation);

  • Create an intent wit Customer journey configuration:
val config = CustomerJourneyConfig.Builder(
                baseUrl = baseUrl, // Add server base URL if POC server provided by GBG IDscan its most likely https://company.idscan.cloud
                credentials = Credentials(username, password), // Add Scanning Area credentials or use parameter name token and add it.
                certificates = emptyList(), // Reffer to section: SSL pinning CustomerJourney
        ).build()
// Call to open Customer Journey
        val customerJourney = Intent(this, CustomerJourneyActivity::class.java)
        customerJourney.putExtra(CustomerJourneyActivity.EXTRA_CONFIG, config)
        startActivity(customerJourney)

NOTE: For security reasons ensure that credentials provided from a mobile device are scanning are and don’t have other permissions as this could compromise the security of your IEOS instance.

  • Older way
// Create intent to start scanner activity
Intent customerJourney = new Intent(this, CustomerJourneyActivity.class);
customerJourney.putExtra(CustomerJourneyActivity.EXTRA_BASE_LINK, baseUrl);
customerJourney.putExtra(CustomerJourneyActivity.EXTRA_CREDENTIALS, new Credentials(username, password));
startActivity(customerJourney);

Note: Don’t forget to add a check for camera permissions.

Possible onJourneyFailed(CustomerJourneyError) codes:

CodeDescription
EnterpriseService.EXCEPTION_ERRORReturns when Web service experienced unrecoverable situation and returns localised exception message.
500Internal server error, more information on server side.
408Server time out.
401Unauthorised, possibly bad credentials.
400Bad Request.
Other error HTTP status codes possible.
https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
CustomerJourneyError Errors from customer journey itself.
NONENo error.
GENERAL General error check message.
NO_SERVER_RESPONSE Journey Failed server din’t respond.
UNKNOWN_REQUIRED_ACTION Journey Failed because of unknown action.
CAMERAJourney Failed because of camera failure.
WEB_INITIALIZING Creating webservice instance failed.
WEB_INITIALIZING_BAD_URL Creating Retrofit instance failed with IllegalArgumentException.
EXECUTIONExecution error, most likely exceptions from witch we are not recovering, will send exception localised message.

For more information check JavaDocs on possible call exceptions.

Was this page helpful?