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:
| - | - |
| transactionTypes | Array | List of transactions that the Third Party App would like to be associated with. Valid values:
| - | - |
{
"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"
}
