| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Create Ticket
Opens a new support ticket linked to a specific merchant profile. The ticket is routed to the designated department (Customer Service or Underwriting) based on the request. Optional contact and merchant information fields provide context to the receiving team. On success, the API returns the newly created ticket ID.
Endpoint
POST /api/v1/tickets/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 to initiate any merchant service request that requires internal action — most commonly to request enablement of Instant Funding after a banking application has been submitted. This is typically step 2 in the Instant Funding workflow, after POST /api/v1/banking/submit completes successfully. It is also used for general customer service inquiries or underwriting follow-ups.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
merchantProfileId | integer (int32) | Yes | The Netevia HQ merchant profile ID the ticket is associated with. |
subject | string | Yes | Short title describing the ticket topic (e.g., "Instant Funding"). |
description | string | Yes | Full description of the request or issue. |
priority | string (enum) | No | Ticket urgency: Low, Medium, High, Critical. |
department | string (enum) | No | Target department: CustomerService or Underwriting. |
contactInformation | object | No | Contact details for the person associated with the request. |
contactInformation.firstName | string | No | Contact first name. |
contactInformation.lastName | string | No | Contact last name. |
contactInformation.phone | string | No | Contact phone number. |
contactInformation.fax | string | No | Contact fax number. |
contactInformation.email | string | No | Contact email address. |
contactInformation.mobilePhone | string | No | Contact mobile phone number. |
merchantInformation | object | No | Additional merchant context for the ticket. |
merchantInformation.dba | string | No | Merchant DBA name. |
merchantInformation.address | string | No | Merchant street address. |
merchantInformation.city | string | No | Merchant city. |
merchantInformation.state | string | No | Merchant state (2-letter code). |
merchantInformation.zip | string | No | Merchant ZIP code. |
merchantInformation.merchantType | string | No | Type of merchant business. |
merchantInformation.phone | string | No | Merchant phone number. |
merchantInformation.fax | string | No | Merchant fax number. |
merchantInformation.webSite | string | No | Merchant website URL. |
merchantInformation.email | string | No | Merchant email address. |
merchantInformation.mobilePhone | string | No | Merchant mobile phone number. |
{
"merchantProfileId": 70269,
"subject": "Instant Funding",
"priority": "Low",
"department": "Underwriting",
"description": "Please enable Instant Funding for this merchant. Banking application has been submitted.",
"contactInformation": {
"firstName": "John",
"lastName": "Doe",
"phone": "3055550100",
"email": "[email protected]"
},
"merchantInformation": {
"dba": "Sunshine Retail LLC",
"address": "123 Main St",
"city": "Miami",
"state": "FL",
"zip": "33101"
}
}Response
200 OK
| Field | Type | Description |
|---|---|---|
data.ticketId | integer | The newly created ticket ID. Store this for subsequent operations. |
requestId | integer | Internal request tracking ID. |
success | boolean | true if the ticket was created successfully. |
error | string | Error message if the operation failed. |
validationErrors | array | List of field-level validation issues. |
{
"data": {
"ticketId": 48291
},
"requestId": 98125,
"success": true,
"error": null,
"validationErrors": []
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Missing required fields (merchantProfileId, subject, or description), or invalid enum value for priority or department. |
| 401 | Invalid or missing Basic Auth credentials. |
| 403 | User does not have permission for this operation. |
| 404 | Merchant profile not found for the given merchantProfileId. |
| 500 | Internal server error. |
Common Mistakes
- Using an invalid
priorityvalue — onlyLow,Medium,High, andCriticalare accepted. - Using an invalid
departmentvalue — onlyCustomerServiceandUnderwritingare accepted. - Not saving the returned
ticketId— it is required for all subsequent ticket operations (adding comments, attachments, checking status). - Submitting the ticket before the banking application (
POST /api/v1/banking/submit) is complete for Instant Funding requests.
Related Endpoints
POST /api/v1/banking/submit— Submit the banking application before creating an Instant Funding ticket.GET /api/v1/tickets/getTicketById— Retrieve full details of the created ticket.POST /api/v1/tickets/comment— Add a follow-up comment to the ticket.
Example
curl -X POST https://hq.staging.netevia.dev/api/v1/tickets/create \
-H "Authorization: Basic $(echo -n 'username:password' | base64)" \
-H "Content-Type: application/json" \
-d '{
"merchantProfileId": 70269,
"subject": "Instant Funding",
"priority": "Low",
"department": "Underwriting",
"description": "Please enable Instant Funding for this merchant. Banking application has been submitted.",
"contactInformation": {
"firstName": "John",
"lastName": "Doe",
"phone": "3055550100",
"email": "[email protected]"
},
"merchantInformation": {
"dba": "Sunshine Retail LLC",
"address": "123 Main St",
"city": "Miami",
"state": "FL",
"zip": "33101"
}
}'