Ordering and Setting Up Equipment
Use the Equipment Ordering API to submit completed equipment surveys for selected hardware. This API helps streamline the process of configuring and ordering devices required for payment processing.
Merchants select the equipment they need, such as POS terminals or card readers and complete a survey specific to each device. Once submitted, the system provisions the hardware and links it to the corresponding Merchant ID (MID). This ensures seamless integration with the payment system.
Retrieve available Equipment
The equipment setup process begins by retrieving the available hardware products that can be provisioned for a merchant.
Retrieving available equipment holds below methods that allow you either to retrieve a complete list of available products or a specific product.
Get All Equipment Products
Use the GET method /api/equipment/products
to retrieve a complete list of available products. This endpoint supports optional query parameters such as isSoftware
to filter software-only products. Refer to the below sample code for reference:
{
"frontends": [
"string"
],
"manufacturer": "string",
"metadata": {
"exchangeId": "string",
"timestamp": "string"
},
"modelId": 0,
"productName": "string",
"productType": "Terminal"
}
Get a Specific Product
Use the GET method /api/equipment/products/{manufacturer}/{deviceType}
to retrieve a specific product if the manufacturer and device type are already known. It is useful for targeting a specific piece of hardware when the selection is pre-defined. Refer to the below sample code for reference:
{
"frontends": [
"string"
],
"manufacturer": "string",
"metadata": {
"exchangeId": "string",
"timestamp": "string"
},
"modelId": 0,
"productName": "string",
"productType": "Terminal"
}
Equipment Configuration Survey
After selecting a product, the next step is to retrieve the Configuration Survey associated with that equipment. Each product includes a unique set of configuration options, captured through a dynamic survey. These options ensure that the device is properly set up for the merchant’s specific use case.
Use the GET method /api/equipment/surveys/{productId}
to retrieve the complete configuration survey for the specified product. Refer to the below sample code for reference:
{
"metadata": {
"exchangeId": "string",
"timestamp": "string"
},
"questionAnswerGroup": {
"id": 0,
"questionAnswerSets": {
"additionalProp1": [
{
"answers": [
{
"answer": "string",
"id": 0,
"selected": true
}
],
"children": [
"string"
],
"conditionalOnAnswer": 0,
"id": 0,
"isHidden": true,
"question": "string",
"required": true,
"selectedAnswer": 0,
"sendToMerchantApp": true,
"tags": [
{
"group": "string",
"name": "string"
}
],
"type": "string"
}
],
"additionalProp2": [
{
"answers": [
{
"answer": "string",
"id": 0,
"selected": true
}
],
"children": [
"string"
],
"conditionalOnAnswer": 0,
"id": 0,
"isHidden": true,
"question": "string",
"required": true,
"selectedAnswer": 0,
"sendToMerchantApp": true,
"tags": [
{
"group": "string",
"name": "string"
}
],
"type": "string"
}
],
"additionalProp3": [
{
"answers": [
{
"answer": "string",
"id": 0,
"selected": true
}
],
"children": [
"string"
],
"conditionalOnAnswer": 0,
"id": 0,
"isHidden": true,
"question": "string",
"required": true,
"selectedAnswer": 0,
"sendToMerchantApp": true,
"tags": [
{
"group": "string",
"name": "string"
}
],
"type": "string"
}
]
},
"questionAreas": [
"string"
]
}
}
Submit Equipment Order
Once the product is selected and the configuration survey is completed, the next step is to submit the equipment order. The Equipment Ordering used to submit the final order, that include the merchant's 16-digit Merchant ID (MID), selected product, and the completed configuration survey.
Use the POST method /api/equipment/orders
to create or submit an equipment order. Refer to the sample request code for reference:
{
"merchantNumber": "string",
"metadata": {
"exchangeId": "string",
"timestamp": "string"
},
"orderCreateTime": {
"calendarType": "string",
"fieldsComputed": 0,
"fieldsNormalized": 0,
"firstDayOfWeek": 0,
"lenient": true,
"minimalDaysInFirstWeek": 0,
"time": "2025-07-03T13:53:25.303Z",
"timeInMillis": 0,
"timeZone": {
"displayName": "string",
"dstsavings": 0,
"id": "string",
"rawOffset": 0
},
"weekCountData": {
"country": "string",
"displayCountry": "string",
"displayLanguage": "string",
"displayName": "string",
"displayScript": "string",
"displayVariant": "string",
"extensionKeys": [
{}
],
"iso3Country": "string",
"iso3Language": "string",
"language": "string",
"script": "string",
"unicodeLocaleAttributes": [
"string"
],
"unicodeLocaleKeys": [
"string"
],
"variant": "string"
},
"weekDateSupported": true,
"weekYear": 0,
"weeksInWeekYear": 0,
"zoneShared": true
},
"orderId": "string",
"orderItems": [
{
"completionDate": "MM/dd/yyyy HH:mm a",
"errors": [
{
"field": "string",
"message": "string"
}
],
"manufacturer": "string",
"orderItemId": 0,
"orderItemMetadata": [
{
"apiKey": "string",
"orderStatus": "string",
"productManufacturer": "string",
"productModel": "string",
"publicKey": "string",
"salesforceCaseNumber": "string",
"serialNumber": "string",
"storeNumber": 0,
"tcn": "string",
"terminalId": 0,
"trackingNumber": "string",
"vNumber": "string"
}
],
"productName": "string",
"productType": "Software",
"quantity": 0,
"survey": {
"metadata": {
"exchangeId": "string",
"timestamp": "string"
},
"questionAnswerGroup": {
"questionAnswerSets": {
"additionalProp1": [
{
"answers": [
{
"answer": "string",
"id": 0,
"selected": true
}
],
"children": [
"string"
],
"conditionalOnAnswer": 0,
"errors": [
{
"field": "string",
"message": "string"
}
],
"isHidden": true,
"question": "string",
"required": true,
"selectedAnswer": 0,
"sendToMerchantApp": true,
"tags": [
{
"group": "string",
"name": "string",
"value": "string"
}
],
"type": "string",
"valid": true
}
],
"additionalProp2": [
{
"answers": [
{
"answer": "string",
"id": 0,
"selected": true
}
],
"children": [
"string"
],
"conditionalOnAnswer": 0,
"errors": [
{
"field": "string",
"message": "string"
}
],
"isHidden": true,
"question": "string",
"required": true,
"selectedAnswer": 0,
"sendToMerchantApp": true,
"tags": [
{
"group": "string",
"name": "string",
"value": "string"
}
],
"type": "string",
"valid": true
}
],
"additionalProp3": [
{
"answers": [
{
"answer": "string",
"id": 0,
"selected": true
}
],
"children": [
"string"
],
"conditionalOnAnswer": 0,
"errors": [
{
"field": "string",
"message": "string"
}
],
"isHidden": true,
"question": "string",
"required": true,
"selectedAnswer": 0,
"sendToMerchantApp": true,
"tags": [
{
"group": "string",
"name": "string",
"value": "string"
}
],
"type": "string",
"valid": true
}
]
},
"questionAreas": [
"string"
]
}
},
"surveyValid": true,
"trackingNumber": "string",
"validFrontends": [
"string"
]
}
],
"orderModifyTime": {
"calendarType": "string",
"fieldsComputed": 0,
"fieldsNormalized": 0,
"firstDayOfWeek": 0,
"lenient": true,
"minimalDaysInFirstWeek": 0,
"time": "2025-07-03T13:53:25.304Z",
"timeInMillis": 0,
"timeZone": {
"displayName": "string",
"dstsavings": 0,
"id": "string",
"rawOffset": 0
},
"weekCountData": {
"country": "string",
"displayCountry": "string",
"displayLanguage": "string",
"displayName": "string",
"displayScript": "string",
"displayVariant": "string",
"extensionKeys": [
{}
],
"iso3Country": "string",
"iso3Language": "string",
"language": "string",
"script": "string",
"unicodeLocaleAttributes": [
"string"
],
"unicodeLocaleKeys": [
"string"
],
"variant": "string"
},
"weekDateSupported": true,
"weekYear": 0,
"weeksInWeekYear": 0,
"zoneShared": true
},
"resubmit": true,
"status": "Active",
"validFrontends": [
"string"
]
}
This endpoint accepts a completed survey along with product details and order metadata.
For a detailed breakdown of the request and response fields and their descriptions, refer to the Equipment Boarding API.
Last updated
Was this helpful?