Guides
Log In
Guides

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

ElementTypeDescriptionSizeRequired
apiVersionStringAPI version numberV20Required
correlationIdStringCorrelates a series of requests within the same flow.V50Required
requestDateTimeStringDate 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.
F20Required
actionString"REGISTER"V50Required
applicationDataObjectThird party application data--
applicationNameStringThird party application nameV50Required
applicationPackageNameStringThird party application package name. This must be set by the TPA using BuildConfig.APPLICATION_IDV50Required
hookRegistrationsArrayContains data applicable to transaction request--
hookTypeStringList of integration points that the Third Party App would like to register to.
Valid values:
  • "PRE_CARD_ENTRY"
  • "POST_PROCESSING"
--
transactionTypesArrayList 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

ElementTypeDescriptionSizeRequired
apiVersionStringAPI version numberV20Required
correlationIdStringEcho from the requestV50Required
responseDateTimeStringDate 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.
F20Required
actionString"REGISTER"V50Required
statusStringHTTP Status Codes for the overall transaction requestF3Required

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