| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Add POS Equipment
Adds a POS terminal or device to a merchant's application within Netevia HQ. The request specifies the equipment catalog item, quantity (1–10), payment type, and optional pricing or funder information. The endpoint returns an array of purchase records reflecting the updated equipment state for the merchant, one record per equipment line added.
Endpoint
POST /api/v1/equipment/equipmentpos
Authentication
Basic HTTP Authentication required.
Encode username:password in Base64 and pass in the Authorization header:
Authorization: Basic {base64(username:password)}
When to use
Use this endpoint during the merchant onboarding or equipment management phase when a POS terminal needs to be assigned to a merchant application. This covers all acquisition types — direct purchases, ISO-supplied equipment, reprogram scenarios, and loaner or membership programs. Call GET /api/v1/equipment/pos first to retrieve the valid equipment catalog IDs and call GET /api/v1/equipment/funders to get available funder IDs before submitting.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| id | integer (int32) | Yes | Merchant profile ID to which the POS equipment is being added |
| purchaseId | integer (int32) | No | Existing purchase record ID if updating an existing purchase line |
| equipmentId | integer (int32) | Yes | Catalog ID of the POS equipment being added (obtain from GET /api/v1/equipment/pos) |
| quantity | integer (int32) | Yes | Number of units to add; must be between 1 and 10 |
| purchasePrice | number (double) | No | Purchase price per unit for the equipment |
| monthlyPayment | number (double) | No | Monthly lease or financing payment amount per unit |
| paymentType | string (enum) | Yes | Payment method for acquiring the equipment. One of: Purchase, Reprogram, PurchaseByIso, SmartMembershipProgram, LoanerProgram |
| note | string | No | Free-text notes or special instructions for this equipment entry |
| fundersIds | array of integer | No | Array of funder IDs that will back the equipment financing (obtain from GET /api/v1/equipment/funders) |
{
"id": 78234,
"purchaseId": null,
"equipmentId": 14,
"quantity": 2,
"purchasePrice": 549.00,
"monthlyPayment": null,
"paymentType": "Purchase",
"note": "Primary countertop terminals for main register and backup",
"fundersIds": [3, 5]
}Response
200 OK
| Field | Type | Description |
|---|---|---|
| data | array | Array of purchase response objects for each equipment item added |
| data[].merchantProfileId | integer | Merchant profile the equipment was added to |
| data[].purchaseId | integer | Unique ID for this purchase record |
| data[].equipmentId | integer | Catalog ID of the equipment |
| data[].equipmentTitle | string | Display name of the equipment from the catalog |
| data[].purchasePrice | number | Purchase price recorded for this equipment |
| data[].monthlyPayment | number | Monthly payment recorded, if applicable |
| data[].fundersIds | array of integer | Funder IDs associated with this purchase |
| data[].isPosEquipment | boolean | Always true for this endpoint |
| requestId | integer | Unique request ID for tracking |
| success | boolean | True if the request completed successfully |
| error | string | Error message on failure; null on success |
| validationErrors | array | Field-level validation errors, if any |
{
"data": [
{
"merchantProfileId": 78234,
"purchaseId": 20051,
"equipmentId": 14,
"equipmentTitle": "PAX S300 PIN Pad",
"purchasePrice": 549.00,
"monthlyPayment": null,
"fundersIds": [3, 5],
"isPosEquipment": true
}
],
"requestId": 66312,
"success": true,
"error": null,
"validationErrors": []
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Required fields missing; quantity is outside the 1–10 range; paymentType is not a valid enum value; equipmentId does not exist in the catalog |
| 401 | Invalid or missing Basic Auth credentials |
| 403 | User does not have permission for this operation |
| 404 | Merchant profile not found for the given id |
| 500 | Internal server error while adding the equipment |
Common Mistakes
- Setting
quantityto 0 or more than 10 — the allowed range is 1 to 10 inclusive - Using a free-text string for
paymentTypeinstead of one of the exact enum values:Purchase,Reprogram,PurchaseByIso,SmartMembershipProgram,LoanerProgram - Providing an
equipmentIdthat is not in the POS equipment catalog — always fetch the catalog first viaGET /api/v1/equipment/pos - Including
fundersIdsas a single integer rather than an array — the field must be a JSON array even when only one funder is being referenced
Related Endpoints
GET /api/v1/equipment/pos— retrieve the POS equipment catalog to get validequipmentIdvaluesGET /api/v1/equipment/funders— retrieve available funder IDsGET /api/v1/merchant/equipment— view all equipment currently assigned to a merchantPOST /api/v1/equipment/regular— add non-POS equipment to a merchant application
Example
curl -X POST "https://hq.staging.netevia.dev/api/v1/equipment/equipmentpos" \
-H "Authorization: Basic $(echo -n 'username:password' | base64)" \
-H "Content-Type: application/json" \
-d '{
"id": 78234,
"equipmentId": 14,
"quantity": 2,
"paymentType": "Purchase",
"purchasePrice": 549.00,
"note": "Primary countertop terminals for main register and backup",
"fundersIds": [3, 5]
}'