Add POS equipment to the merchant application

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

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

FieldTypeRequiredDescription
idinteger (int32)YesMerchant profile ID to which the POS equipment is being added
purchaseIdinteger (int32)NoExisting purchase record ID if updating an existing purchase line
equipmentIdinteger (int32)YesCatalog ID of the POS equipment being added (obtain from GET /api/v1/equipment/pos)
quantityinteger (int32)YesNumber of units to add; must be between 1 and 10
purchasePricenumber (double)NoPurchase price per unit for the equipment
monthlyPaymentnumber (double)NoMonthly lease or financing payment amount per unit
paymentTypestring (enum)YesPayment method for acquiring the equipment. One of: Purchase, Reprogram, PurchaseByIso, SmartMembershipProgram, LoanerProgram
notestringNoFree-text notes or special instructions for this equipment entry
fundersIdsarray of integerNoArray 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

FieldTypeDescription
dataarrayArray of purchase response objects for each equipment item added
data[].merchantProfileIdintegerMerchant profile the equipment was added to
data[].purchaseIdintegerUnique ID for this purchase record
data[].equipmentIdintegerCatalog ID of the equipment
data[].equipmentTitlestringDisplay name of the equipment from the catalog
data[].purchasePricenumberPurchase price recorded for this equipment
data[].monthlyPaymentnumberMonthly payment recorded, if applicable
data[].fundersIdsarray of integerFunder IDs associated with this purchase
data[].isPosEquipmentbooleanAlways true for this endpoint
requestIdintegerUnique request ID for tracking
successbooleanTrue if the request completed successfully
errorstringError message on failure; null on success
validationErrorsarrayField-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

CodeWhen it happens
400Required fields missing; quantity is outside the 1–10 range; paymentType is not a valid enum value; equipmentId does not exist in the catalog
401Invalid or missing Basic Auth credentials
403User does not have permission for this operation
404Merchant profile not found for the given id
500Internal server error while adding the equipment

Common Mistakes

  • Setting quantity to 0 or more than 10 — the allowed range is 1 to 10 inclusive
  • Using a free-text string for paymentType instead of one of the exact enum values: Purchase, Reprogram, PurchaseByIso, SmartMembershipProgram, LoanerProgram
  • Providing an equipmentId that is not in the POS equipment catalog — always fetch the catalog first via GET /api/v1/equipment/pos
  • Including fundersIds as 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 valid equipmentId values
  • GET /api/v1/equipment/funders — retrieve available funder IDs
  • GET /api/v1/merchant/equipment — view all equipment currently assigned to a merchant
  • POST /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]
  }'
Body Params
int32
required
int32
int32
required
int32
required
1 to 10
double
double
string
enum
required
Allowed:
string
fundersIds
array of int32s
fundersIds
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
string
enum
Defaults to application/json

Generated from available request content types

Allowed:
Response

Language
Credentials
Basic
base64
:
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
text/json