Get merchant status

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

Get Merchant Status (Extended)

Returns the current status of a merchant application using an extended response schema. Unlike GET /api/v1/merchant/status, this endpoint returns a StatusResult object directly (not wrapped in ApiResponse1) and includes a full enumeration of all possible status values spanning the entire merchant lifecycle — from draft through underwriting, MPA processing, and processor boarding. It also includes explicit success and validationErrors fields.

Endpoint

GET /api/v1/merchant/status2

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 when you need the complete status taxonomy of a merchant application, including states such as "MPABoarded", "Underwriting", "PendingPreUw", and processor-specific states like "ElavonSigned". This endpoint is preferred when building integrations that need to react to a wider range of status transitions than what status returns.

Query Parameters

ParameterTypeRequiredDescription
idinteger (int32)YesThe unique internal ID of the merchant application

Response

200 OK

The response is a StatusResult object directly (not wrapped in the standard ApiResponse1 envelope).

FieldTypeDescription
midstringMerchant Identification Number assigned by the processor (present when boarded)
statusstring (enum)Current lifecycle status of the merchant application (see full enum below)
statusDatestring (date-time)ISO 8601 timestamp of when this status was last set
successbooleanWhether the last operation that set this status completed successfully
errorstringError message if something went wrong
validationErrorsarrayStructured list of field-level errors, each with field and error
requestIdinteger (int32)Internal request tracking ID

Full status enum values:

ValueDescription
DraftApplication created but not yet submitted
NotSubmittedApplication exists but has not been submitted for review
ProspectMerchant is a prospect, not yet a full application
ReceivedApplication received by the processor
PreUnderwritingApplication in preliminary underwriting stage
PendingPreUwPending preliminary underwriting review
UnderwritingApplication actively under underwriting review
UnderReviewApplication under general review
PendingReviewWaiting for review to begin
PendingReviewPreUwPending review in the pre-underwriting phase
InCreditIn credit review
ConditionallyApprovedApproved with conditions that must be met
RequestChangesChanges requested before the application can proceed
PreApprovedPre-approved, pending final confirmation
ApprovedFully approved
DeclinedApplication declined
DeactivatedMerchant account has been deactivated
WithDrawnApplication withdrawn by the merchant or ISO
CancelledApplication cancelled
ClosedMerchant account closed
PendingPending action or decision
NewNewly created record
MPAInProcessMerchant Processing Agreement is being processed
MPACancelledMPA signing process was cancelled
MPADeclinedMPA was declined by the merchant
MPADeletedMPA record was deleted
MPAErrorAn error occurred during MPA processing
MPABoardedMPA successfully boarded with the processor
CRPOSEquipmentCR/POS equipment stage
T2UnderReviewTier-2 underwriting in review
T2ApprovedTier-2 underwriting approved
T2DeclinedTier-2 underwriting declined
T2AnyAny tier-2 state
T2ClosedTier-2 case closed
T2CancelledTier-2 case cancelled
ElavonSignedSigned with Elavon processor
ElavonSubmittedSubmitted to Elavon processor
ElavonProcessorReceivedReceived by Elavon processor
{
  "mid": "4280001234567",
  "status": "MPABoarded",
  "statusDate": "2026-05-20T11:00:00Z",
  "success": true,
  "error": null,
  "validationErrors": [],
  "requestId": 110294
}

Example — Application pending changes:

{
  "mid": null,
  "status": "RequestChanges",
  "statusDate": "2026-05-18T14:22:00Z",
  "success": false,
  "error": "Missing voided check for bank verification",
  "validationErrors": [
    {
      "field": "businessCheckingRoutingNumber",
      "error": "Routing number does not match bank records"
    }
  ],
  "requestId": 110101
}

Error Codes

CodeWhen it happens
400The id query parameter is missing or not a valid integer
401Invalid or missing Basic Auth credentials
403User does not have permission for this operation
404No merchant application found for the given id
500Internal server error

Common Mistakes

  • Note that this endpoint returns a StatusResult directly, not the standard ApiResponse1 wrapper used by most other endpoints — the response schema is different from GET /api/v1/merchant/status.
  • Not handling the full range of status enum values — build your integration to handle unknown values gracefully, as new statuses may be added.
  • Confusing validationErrors (an array of {field, error} objects) with validationResults from other endpoints (which use {memberNames, errorMessage} instead).
  • Assuming success: true means the merchant is approved — success reflects whether the last status-setting operation succeeded, not the merchant's approval state.

Related Endpoints

  • GET /api/v1/merchant/status — simpler status endpoint that returns the standard ApiResponse1 wrapper with StatusResponse data
  • POST /api/v1/merchant/submit — submit the merchant application for review
  • POST /api/v1/merchant/updateStatus — update a merchant's status (admin use)

Example

curl -X GET "https://hq.staging.netevia.dev/api/v1/merchant/status2?id=10045" \
  -H "Authorization: Basic $(echo -n 'username:password' | base64)" \
  -H "Accept: application/json"
Query Params
int32
required
Headers
string
enum
Defaults to application/json

Generated from available response 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