PayFac as a Service
Terminal & Service Ordering for New Merchants
Create a terminal/service order for a newly-onboarded merchant and monitor fulfillment.
Summary
APIs used
POST /onboarding/merchants/{merchant-id}/orders - Create an order
GET /onboarding/merchants/{merchant-id}/orders/{merchant-order-id} - Retrieve an order
Prerequisites
Merchant is created and has a valid merchant-id.
Merchant must have a valid AgreementModelCode and RepresentativeCode provided by Moneris
API access with scopes:
onboarding.order.write for Create Order
onboarding.order.read for Retrieve Order
Authentication headers:
Api-Version
X-Correlation-Id
OAuth2 or ApiKey Auth
Partners can programmatically provision hardware, services, and supplies at scale, reducing manual effort and speeding time-to-activate for new merchants.
Use Case Overview
Partners (ISVs, PayFacs, third‑party acquirers) trigger an order once a merchant record exists. The Partner app calls Moneris PayFac as a Service’s Terminal & Service Orders APIs to submit the order and then polls for order status to drive downstream workflows (e.g., shipment notifications, POS enablement).
Key tasks this scenario enables:
Submit an order for terminals/services/supplies for a merchant
Receive the created order payload with fees, promotions, and supplies items
Retrieve order details to track status and fulfillment
1. Create the Order (POST)
Submit the initial terminal/service/supplies order for the merchant.
Call POST /onboarding/merchants/{merchant-id}/orders
with one of the supported request examples.
The API returns 201 Created with an order object representing the created order.
Required Inputs
merchant-id (path)
Request body matching
Create Order request (createOrderRequest)
Authentication headers:
Api-Version
X-Correlation-Id
OAuth2 or ApiKey Auth
Response
Request
2. Retrieve Order Details (GET)
Poll order status and details to drive fulfillment and notifications.
Call GET /onboarding/merchants/{merchant-id}/orders/{merchant-order-id}.
The API returns 200 OK with the latest order details.
Required Inputs
merchant-id (path)
merchant-order-id (path)
Auth headers noted in Prerequisites
Response
Notes
NOTE: Expedited Orders
When isExpeditedOrder = true, coordinate with fulfillment SLAs accordingly.
Additional Notes
All monetary amounts are in cents.
Use idempotencyKey on create to prevent duplicate orders (where applicable).
Monitor orderStatus to drive shipment notices and POS enablement.
Common error responses include 400, 401, 403, 404, 409, 422, 429, 500, 503.
Additional Information
Learn more with the API Definitions
Peruse the endpoints, request/response formats, and authentication methods covered in this scenario.
