| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Get Charge Anywhere Credentials
Retrieves the connection status and terminal credentials for the Charge Anywhere Virtual Terminal associated with a given merchant profile. The response includes the merchant's internal ID, a list of terminal objects each containing an identification string, terminal ID, and secret key. This endpoint is primarily used to verify that a merchant's virtual terminal is connected and operational before processing transactions.
Endpoint
GET /api/v1/merchant/chargeAnywhere/virtualTerminal
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 check whether a merchant's Charge Anywhere Virtual Terminal is active and retrieve its credentials. This is useful before initiating a transaction session, during troubleshooting, or when verifying that a newly provisioned terminal is properly connected. Support teams can use this to diagnose connectivity issues for a specific merchant account.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| merchantProfileId | integer (int32) | Yes | Unique identifier for the merchant profile whose Charge Anywhere credentials are being retrieved |
Response
200 OK
| Field | Type | Description |
|---|---|---|
| internalMerchantId | string | The merchant's internal ID within the Charge Anywhere system |
| terminals | array | List of terminal credential objects associated with the merchant |
| terminals[].identification | string | Connection status or identifier string for the terminal (e.g., connected, disconnected) |
| terminals[].terminalId | string | Unique identifier for the terminal |
| terminals[].secret | string | Secret key used for terminal authentication |
| requestId | integer | Unique ID for this API request, useful for logging and debugging |
| success | boolean | Indicates whether the request completed successfully |
| error | string | Error message if the request failed; null on success |
| validationErrors | array | List of field-level validation errors, if any |
{
"internalMerchantId": "MID-78234",
"terminals": [
{
"identification": "connected",
"terminalId": "TRM-00142",
"secret": "s3cr3tK3y!2024xZ"
},
{
"identification": "connected",
"terminalId": "TRM-00143",
"secret": "k9mNpQ7rLw3vBx01"
}
],
"requestId": 40291,
"success": true,
"error": null,
"validationErrors": []
}Error Codes
| Code | When it happens |
|---|---|
| 400 | merchantProfileId is missing or not a valid integer |
| 401 | Invalid or missing Basic Auth credentials |
| 403 | User does not have permission for this operation |
| 404 | No Charge Anywhere connection data found for the specified merchant profile |
| 500 | Internal server error while retrieving credentials |
Common Mistakes
- Passing a string instead of an integer for
merchantProfileId— this parameter must be a valid int32 - Omitting
merchantProfileIdentirely — the query parameter is required - Not checking the
successfield before consuming terminal data — always validate success istruebefore reading theterminalsarray - Expecting the
secretto be stable — secrets may rotate; always fetch fresh credentials before starting a session
Related Endpoints
GET /api/v1/merchant/chargeAnywhere/terminals— list all Charge Anywhere terminals created for a merchantGET /api/v1/merchant/chargeAnywhere/licenses— retrieve license information for a merchant's Charge Anywhere devicesPOST /api/v1/merchant/chargeAnywhere/terminal— create a new Charge Anywhere terminal for a merchant
Example
curl -X GET "https://hq.staging.netevia.dev/api/v1/merchant/chargeAnywhere/virtualTerminal?merchantProfileId=78234" \
-H "Authorization: Basic $(echo -n 'username:password' | base64)" \
-H "Content-Type: application/json"