Update Banking Status - Main Profile
This endpoint allows administrators and authorized partners to update the banking application status of a user's main profile in the Netevia banking system. It supports status transitions such as approving, suspending, or reactivating a profile. Only authenticated users with appropriate permissions may invoke this endpoint.
Endpoint
POST /netevia/profile/changeBankingStatus
Authentication
Bearer token required. Obtain via:
POST https://api.banking.netevia.dev/api/auth/v2
Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.
When to use
Use this endpoint when an administrative or support workflow requires modifying the banking status of a customer's main profile — for example, moving a profile from PendingUW to ApprovedUW after underwriting review, suspending an account by setting it to Closed or Cancelled, or reactivating a profile by transitioning it back to Approved. It is also used internally by automated underwriting flows that progress profiles through the approval pipeline.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| ProfileId | integer (int32) | No | The internal Netevia profile ID of the user whose banking status is being updated. |
| BankingStatus | string (enum) | No | The new banking status to apply. See allowed values below. |
| Notes | string | No | Optional notes or reason for the status change, useful for audit trails. |
| NeteviaUserProfileId | integer (int32) | No | The Netevia user profile ID, used to identify the acting user when applicable. |
BankingStatus Allowed Values
| Value | Description |
|---|---|
New | Profile has been created but not yet submitted. |
Submitted | Application has been submitted for review. |
PendingUW | Application is pending underwriting review. |
ApprovedUW | Application has been approved by underwriting. |
Closed | Account has been closed. |
Cancelled | Application or account has been cancelled. |
Pending_Review | Profile is under manual review. |
Denied | Application has been denied. |
Approved | Profile has been fully approved. |
Pending | Profile is in a pending state awaiting action. |
InReview | Profile is actively being reviewed. |
AutoApprovedUW | Profile was automatically approved by underwriting. |
Response
200 OK
The response may return one of two schemas depending on whether a financial account was opened as part of the status change.
BoardingResponse
| Field | Type | Description |
|---|---|---|
| profileId | integer | The profile ID of the updated user. |
| errors | string (nullable) | Error message if the operation encountered an issue; null on success. |
| success | boolean | Indicates whether the status update was successful. |
| changeLog | array (nullable) | List of change log entries describing what was modified. |
changeLog item
| Field | Type | Description |
|---|---|---|
| requestType | integer (enum) | Numeric code representing the type of banking request performed. |
| changes | string (nullable) | Description of the specific changes made during this request. |
OpenFinancialAccountResponse (extends BoardingResponse)
| Field | Type | Description |
|---|---|---|
| financialAccountId | string (nullable) | ID of the financial account opened as a result of the status change, if applicable. |
{
"profileId": 10482,
"errors": null,
"success": true,
"changeLog": [
{
"requestType": 3,
"changes": "Banking status updated to Approved"
}
]
}With financial account opened:
{
"profileId": 10482,
"errors": null,
"success": true,
"changeLog": [
{
"requestType": 3,
"changes": "Banking status updated to ApprovedUW; financial account created"
}
],
"financialAccountId": "fa_8c3d2e1f4a9b7056"
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Missing required fields or validation error (e.g., invalid BankingStatus value) |
| 401 | Token missing, expired, or invalid |
| 403 | Insufficient permissions to change banking status |
| 404 | Profile not found for the given ProfileId |
| 500 | Internal server error |
Common Mistakes
- Passing an invalid
BankingStatusstring value not in the allowed enum list will result in a 400 error. Use only the exact values listed above. - Omitting
ProfileIdwhen intending to target a specific profile may result in no update being applied or an unintended profile being modified. - Using an expired Bearer token (lifetime is 10 minutes) will result in a 401 response. Refresh via
POST /api/auth/refreshbefore retrying. - Attempting to set a status that represents an illogical transition (e.g., moving from
Approvedback toNew) may succeed at the API level but can cause downstream workflow issues — validate status transitions in your business logic.
Related Endpoints
POST /api/auth/v2— Obtain a Bearer authentication tokenPOST /api/auth/refresh— Refresh an existing Bearer tokenPOST /netevia/profile— Create a new main profileGET /netevia/profile— Retrieve main profile details
Example
curl -X POST "https://api.banking.netevia.dev/netevia/profile/changeBankingStatus?ProfileId=10482&BankingStatus=Approved&Notes=Underwriting+review+complete&NeteviaUserProfileId=201" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"