| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Create Merchant Application (v1)
Deprecated — use Create Merchant v2 instead.
Creates a new merchant services application by collecting the merchant's basic identifying information and associating it with an agent profile. On success, the system returns a merchantProfileId which is used in all subsequent boarding workflow calls. This is the v1 method and has been superseded by the v2 endpoint which supports a more complete data model.
Endpoint
POST /api/v1/merchant/create
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 only if you are maintaining a legacy integration with the v1 boarding API. For all new integrations, use POST /api/v2/merchant/create instead. The typical boarding flow begins with GET /api/v1/agentProfiles and GET /api/v1/GetBoardingSettings to obtain valid agentProfileId and boardingSettingsId values before calling this endpoint.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| cashDiscount | string (enum) | Yes | Whether the merchant participates in a cash discount program. One of: Yes, No |
| firstName | string | Yes | First name of the merchant owner or primary contact |
| lastName | string | Yes | Last name of the merchant owner or primary contact |
| dba | string | Yes | Doing Business As name — the merchant's public-facing business name |
| pos | string (enum) | Yes | Point-of-sale system used by the merchant. One of: None, AptitoPalomaPOS, Clover, PalomaPOS, Aldelo, Restoactive, PoyntPOS, CloverGo, UnifiedMpos, CustomPos, RetailCloud, EHopper, FreedomPos, ClubPos, SelfLane, OtfPOS, NProKiosk, GretaPOS |
| agentProfileId | integer (int32) | Yes | ID of the agent profile to associate with this merchant (from GET /api/v1/agentProfiles) |
| string | No | Email address of the merchant owner or primary contact | |
| boardingSettingsId | integer (int32) | No | ID of the boarding configuration to use (from GET /api/v1/GetBoardingSettings) |
| guid | string | No | Optional external reference GUID for correlation with your own system |
{
"cashDiscount": "No",
"firstName": "Maria",
"lastName": "Santos",
"dba": "Santos Cafe & Bakery",
"pos": "Clover",
"agentProfileId": 4264,
"email": "[email protected]",
"boardingSettingsId": 42
}Response
200 OK
| Field | Type | Description |
|---|---|---|
| data.merchantProfileId | integer | The unique ID assigned to the newly created merchant profile — save this for all subsequent API calls |
| status | string | HTTP status label (e.g., OK) |
| error | string | Error message if the creation failed |
| warning | string | Non-fatal warning message, if any |
| validationResults | array | List of field-level validation errors |
| requestId | integer | Unique identifier for this API request |
{
"data": {
"merchantProfileId": 48291
},
"status": "OK",
"error": null,
"warning": null,
"validationResults": [],
"requestId": 90215
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Required fields missing or invalid (e.g., invalid pos enum value, missing agentProfileId) |
| 401 | Invalid or missing Basic Auth credentials |
| 403 | User does not have permission for this operation |
| 404 | agentProfileId or boardingSettingsId not found |
| 500 | Internal server error |
Common Mistakes
- Using an
agentProfileIdthat does not belong to your ISO — retrieve valid IDs fromGET /api/v1/agentProfilesfirst. - Providing an invalid
posenum value — use exact string values (case-sensitive) from the allowed list. - Not saving the returned
merchantProfileId— every subsequent boarding API call requires this value. - Using this v1 endpoint for new integrations — migrate to
POST /api/v2/merchant/createfor access to the complete merchant data model.
Related Endpoints
GET /api/v1/agentProfiles— retrieve validagentProfileIdvalues before creating a merchantGET /api/v1/GetBoardingSettings— retrieve validboardingSettingsIdvaluesPOST /api/v2/merchant/create— the recommended replacement for this deprecated endpoint
Example
curl -X POST https://hq.staging.netevia.dev/api/v1/merchant/create \
-H "Authorization: Basic $(echo -n 'username:password' | base64)" \
-H "Content-Type: application/json" \
-d '{
"cashDiscount": "No",
"firstName": "Maria",
"lastName": "Santos",
"dba": "Santos Cafe & Bakery",
"pos": "Clover",
"agentProfileId": 4264,
"email": "[email protected]",
"boardingSettingsId": 42
}'