Registration

Overview

Third Party Applications must register with the terminal in order to send and receive messages with the Moneris Go App. Application needs to select the hook(s) they would like to register their app to and its associated transaction type(s).


Request Structure

Element Type Description Size Required
apiVersion String API version number V20 Required
correlationId String Correlates a series of requests within the same flow. V50 Required
requestDateTime String Date and time of the request (YYYY-MM-DDTHH:MM:SSZ).
The format is based on the standard RFC 3339 internet profile — a subset of ISO 8601.
F20 Required
action String "REGISTER" V50 Required
applicationData Object Third party application data - -
applicationName String Third party application name V50 Required
applicationPackageName String Third party application package name. This must be set by the TPA using BuildConfig.APPLICATION\_ID V50 Required
hookRegistrations Array Contains data applicable to transaction request - -
hookType String List of integration points that the Third Party App would like to register to.
Valid values:
  • "PRE\_CARD\_ENTRY"
  • "POST\_PROCESSING"
- -
transactionTypes Array List of transactions that the Third Party App would like to be associated with.
Valid values:
  • "PURCHASE"
  • "PRE\_AUTHORIZATION"
  • "PRE\_AUTHORIZATION\_COMPLETION"
  • "REFUND"
  • "INDEPENDENT\_REFUND"
  • "VOID"
- -

{
  "apiVersion": "2025-01-09",
  "correlationId": "example_correlationId",
  "requestDateTime": "2025-12-31T23:59:60Z",
  "action": "REGISTER",
  "applicationData": {
    "applicationName": "xyz loyalty",
    "applicationPackageName": "xyz.exe"
  },
  "hookRegistrations": [
    {
      "hookType": "PRE_CARD_ENTRY",
      "transactionTypes": [
        "PURCHASE",
        "PRE_AUTHORIZATION",
        "PRE_AUTHORIZATION_COMPLETION"
      ]
    },
    {
      "hookType": "POST_PROCESSING",
      "transactionTypes": [
        "PURCHASE",
        "REFUND"
      ]
    },
    {
      "hookType": "TRANSACTION_RESULTS",
      "transactionTypes": [
        "PURCHASE",
        "REFUND"
      ]
    }
  ]
}

Sample Code

Intent regIntent = new Intent(ACTION_REGISTRATION);
regIntent.setPackage(PACKAGE_MONERIS_PAYMENT);
regIntent.putExtra(EXTRA_JSON_REQUEST, msgRequest);
sendBroadcast(regIntent);

Where:

 private static final String PACKAGE_MONERIS_PAYMENT = "com.moneris.payment.cert";
 private static final String ACTION_REGISTRATION = "com.moneris.hooks.Registration";

and msgRequest is the REGISTRATION request in JSON format


Response Structure

Element Type Description Size Required
apiVersion String API version number V20 Required
correlationId String Echo from the request V50 Required
responseDateTime String Date and time of the response (YYYY-MM-DDTHH:MM:SSZ).
The format is based on the standard RFC 3339 internet profile—a subset of ISO 8601.
F20 Required
action String "REGISTER" V50 Required
status String HTTP Status Codes for the overall transaction request F3 Required

{
  "apiVersion": "2025-01-09",
  "correlationId": "example_correlationId",
  "responseDateTime": "2025-12-31T23:59:60Z",
  "action": "REGISTER",
  "status": "200"
}

Did this page help you?