GuidesAPI ReferenceChangelog
Log In
Guides

Order Status Tracking for Terminals & Services

Summary

Track the status and details of a terminal/service order for a merchant via the MonerisPayFac as a Service API.

Sales and onboarding teams need real-time visibility into order progress (e.g., adjudication, fees, shipping readiness) to coordinate activations and customer updates.


Use Case Overview

  • All orders will go through a business process flow for setup in downstream systems and hence move through different states before order is completed.
  • After submitting an order, your portal polls the order by ID to surface the latest orderStatus and related details (fees, limits, banking summary).

Key tasks this scenario enables:

  • Retrieve order details by ID
  • Display order status and fees
  • Drive notifications when status changes

Steps

  1. Partner App calls GET /onboarding/merchants/{merchant-id}/orders/{merchant-order-id}

  2. API returns 200 OK with the order object

  3. Partner App repeats on interval to detect status changes


📘

API used

GET /onboarding/merchants/{merchant-id}/orders/{merchant-order-id} - Retrieve an order

Systems involved:

  • Partner App (ISV)
  • Moneris PayFac as a Service API
  • Fulfillment systems (reference only).

Prerequisites

  • OAuth 2.0 access with scope:

    • onboarding.order.read
    • (or onboarding.order.write if your integration already has it)
  • Required headers:

    • Api-Version
    • X-Correlation-Id
  • Path parameters:

    • merchant-id
    • merchant-order-id

Retrieve Order by ID

Get the current order status and details to update your portal and workflows.


Endpoint:

GET /onboarding/merchants/{merchant-id}/orders/{merchant-order-id}

Required Inputs:

  • merchant-id (path)

  • merchant-order-id (path)

  • Headers:

    • Api-Version

    • X-Correlation-Id


Response

{
  "merchantOrderId": 1471632,
  "merchantId": "0030211900586",
  "userIdentifier": "001",
  "representativeCode": "0A",
  "adjudicationRequired": true,
  "orderStatus": "APPLICATION_SUBMITTED",
  "orderType": "NET_NEW_MERCHANT",
  "orderOpenedAt": "2025-06-17T16:39:01.85-05:00",
  "orderChangedAt": "2025-06-17T17:40:55.577-05:00",
  "feeDetails": {
    "minimumMerchantDiscountRateFee": { "unitPrice": { "amount": 699, "currency": "CAD" }, "taxes": [] },
    "paperStatementFee": { "unitPrice": { "amount": 795, "currency": "CAD" }, "taxes": [] },
    "pciSecurityFee": { "unitPrice": { "amount": 895, "currency": "CAD" }, "taxes": [] }
  },
  "productDetails": {
    "cardPlanDetails": {
      "visaDebit": { "cardBrandPlans": [], "assessmentPlans": [] },
      "discover": { "cardBrandPlans": [], "assessmentPlans": [] },
      "unionPay": { "cardBrandPlans": [], "assessmentPlans": [] },
      "amex": { "cardBrandPlans": [], "assessmentPlans": [] },
      "otherFinancialInstitutionCards": [],
      "programs": []
    },
    "pointOfSaleSolutionType": "MONERIS_POINT_OF_SALE",
    "isAcceptedByConduct": false,
    "contractSignatureRequired": false,
    "faxRequired": true,
    "additionalInformation": "",
    "businessEntityName": "Intuit",
    "referralInformation": { "description": "Other", "additionalInformation": "NOT USED" },
    "hostType": "ESSENTIS",
    "autoApprovalStatus": "MANUAL_ADJUDICATION",
    "adjudicationApprovalStatus": "MANUAL",
    "hasImprinter": true,
    "isMarketSubSegmentationPreApprovalRequired": false,
    "optOutAmexCommunication": true,
    "multiCurrencyPricingPackageId": 1234
  },
  "limits": {
    "currency": "CAD",
    "dailyRefundLimit": { "amount": 0, "currency": "CAD" },
    "dailyCancellationLimit": { "amount": 0, "currency": "CAD" }
  },
  "bankingDetails": {
    "creditDepositAccount": {
      "currency": "CAD",
      "institutionNumber": "00809",
      "transitNumber": "00160",
      "accountNumber": "3333333333"
    },
    "additionalBankingAccounts": []
  },
  "chainId": "0030600062664",
  "createdAt": "2025-01-01T00:00:00Z",
  "modifiedAt": "2025-01-01T00:00:00Z"
}

Notes

  • Polling strategy: use exponential backoff; avoid aggressive intervals.

  • Use X-Correlation-Id to trace requests end-to-end.

  • Respect rate limits using the X-RateLimit-* headers.


Additional Information

📘

Learn more with the API Definitions

Peruse the endpoints, request/response formats, and authentication methods covered in this scenario.

API References