Updates and customizes reward settings for a specific user profile.
Reward Settings for Profile
This endpoint updates the reward settings for a specific user profile. It configures reward preferences including points accumulation, bonus structures, and redemption options. Use it to tailor reward programs per profile to improve user engagement and retention.
Endpoint
POST /netevia/RewardSetting/{profileId}
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 onboarding a new business customer and you need to assign or update their reward program configuration. It is also appropriate when a partner wants to change whether a profile receives standard or exceptional reward terms, or to apply a specific reward template to a profile.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| profileId | integer (int32) | Yes | The unique identifier of the user profile whose reward settings are being updated. |
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| isNew | boolean | No | Marks the profile as new for reward program purposes. When true, the profile may qualify for new-member reward incentives. |
| isExceptional | boolean | No | Flags the profile for an exceptional (non-standard) reward arrangement. When true, the rewardTemplateId parameter is typically also supplied. |
| rewardTemplateId | integer (int32) | No | The ID of a specific reward template to apply to this profile. Used in conjunction with isExceptional to assign a custom reward structure. |
Response
200 OK
| Field | Type | Description |
|---|---|---|
| id | integer | Internal record identifier. |
| createdDate | string (date-time) | Timestamp when the profile record was created. |
| updatedDate | string (date-time) | null | Timestamp of the most recent update to the profile record. |
| userProfileId | integer | Identifier of the associated user profile. |
| step | integer (enum) | Current onboarding step of the profile. Values: 0–4. |
| accountHolderInformation | object | Personal information for individual account holders (see schema). |
| businessAccountHolder | object | Business account holder details, present for business profiles (see schema). |
| isSubmitted | boolean | null | Indicates whether the profile application has been submitted. |
| accountHolderId | string | null | External account holder identifier. |
| nickName | string | null | Display nickname for the profile. |
| cardProductId | string | null | Identifier of the card product assigned to this profile. |
| openApplicationId | string | null | Identifier of the open banking application associated with this profile. |
| financialAccountId | string | null | Identifier of the primary financial account linked to this profile. |
| applicationStatus | integer (enum) | Application review status. Values: 0=Unknown, 1=Pending, 2=Approved, 3=Declined, 4=Closed. |
| bankingStatus | string (enum) | Detailed banking application status. Values: New, Submitted, PendingUW, ApprovedUW, Closed, Cancelled, Pending_Review, Denied, Approved, Pending, InReview, AutoApprovedUW. |
| applicationDate | string (date-time) | null | Date the banking application was submitted. |
| approvalDate | string (date-time) | null | Date the banking application was approved. |
| isDeleted | boolean | Indicates whether the profile has been soft-deleted. |
| isLocked | boolean | Indicates whether the profile is locked. |
| isAccessLocked | boolean | Indicates whether login access is restricted (e.g., after multiple failed login attempts). |
| isMfaEnabled | boolean | Indicates whether multi-factor authentication is enabled for this profile. |
| isOtpEnabled | boolean | Indicates whether one-time password authentication is enabled. |
| agentPayoutProfileId | integer | null | Identifier of the agent payout profile, if applicable. |
| salesRepresentativeId | integer | null | Identifier of the assigned sales representative, if applicable. |
| rewordType | integer (enum) | The reward type assigned to the profile. Values: 1=Standard, 2=Premium, 4=Custom. |
| isNew | boolean | null | Reflects whether the profile is flagged as new for reward purposes. |
| isExceptional | boolean | null | Reflects whether the profile has an exceptional reward arrangement. |
| profileSettings | object | Profile-level settings including financial account permissions and transfer limits (see schema). |
| applicationCreationType | string (enum) | Channel through which the application was created. Values: MobileApplication, OnlineBankingApplication, OnlineMerchantApplication, NeteviaBoardingApplication, BankingAPI, NeteviaAPI. |
| exceptionalTemplateId | integer | null | ID of the exceptional reward template applied, if isExceptional is true. |
| profileType | integer (enum) | Profile classification. Values: 0–3. |
| accountType | integer (enum) | User account type. Values: 1–5. |
| employer | object | null | Employer profile associated with this account, if applicable. |
| lockFinancialAccountId | string | null | Financial account ID that is currently locked, if any. |
| agreements | array | null | List of agreements accepted by the account holder (name, createdDate, acceptanceDate). |
{
"id": 1042,
"createdDate": "2025-03-10T09:00:00Z",
"updatedDate": "2025-11-14T15:30:00Z",
"userProfileId": 5817,
"step": 4,
"accountHolderInformation": null,
"businessAccountHolder": {
"id": 301,
"createdDate": "2025-03-10T09:00:00Z",
"updatedDate": null,
"email": "[email protected]",
"givenName": "Jane",
"familyName": "Smith",
"middleName": null,
"phone": "555-867-5309",
"ssn": "XXX-XX-XXXX",
"dateOfBirth": "1980-06-15T00:00:00Z",
"legalBusinessName": "Acme Corp LLC",
"doingBusinessAsName": "Acme Corp",
"website": "https://acmecorp.com",
"businessType": 1,
"businessPhone": "555-200-3000",
"employerIdentificationNumber": "XX-XXXXXXX",
"percentageOwnership": 100,
"businessStartDate": "2015-01-01T00:00:00Z",
"annualBusinessRevenue": 500000,
"payrollCustomer": false,
"owners": [],
"merchantProfileId": null
},
"isSubmitted": true,
"accountHolderId": "ah_78dac3f2e1b94a05",
"nickName": "Acme Main",
"cardProductId": "cp_9f3e12d4b5c7a608",
"openApplicationId": "app_4d1c9a03b7e25f88",
"financialAccountId": "fa_2b5e8c71d4a36f09",
"applicationStatus": 2,
"bankingStatus": "Approved",
"applicationDate": "2025-03-10T09:00:00Z",
"approvalDate": "2025-03-12T11:00:00Z",
"isDeleted": false,
"isLocked": false,
"isAccessLocked": false,
"isMfaEnabled": true,
"isOtpEnabled": false,
"agentPayoutProfileId": null,
"salesRepresentativeId": 12,
"rewordType": 2,
"isNew": false,
"isExceptional": true,
"profileSettings": {
"financialAccountsPermissions": {
"financialAccountsMaxNumber": 5,
"externalAccountsMaxNumber": 3
},
"transferAmountLimits": {
"achOutTransferAmountLimit": 10000,
"internalTransferAmountLimit": 25000
},
"loanOff": false
},
"applicationCreationType": "NeteviaAPI",
"exceptionalTemplateId": 7,
"profileType": 1,
"accountType": 2,
"employer": null,
"lockFinancialAccountId": null,
"agreements": [
{
"name": "Terms of Service",
"createdDate": "2025-03-10T09:00:00Z",
"acceptanceDate": "2025-03-10T09:15:00Z"
}
]
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Missing required fields or validation error (e.g., invalid profileId format or conflicting query parameters) |
| 401 | Token missing, expired, or invalid |
| 403 | Insufficient permissions to modify reward settings for the specified profile |
| 404 | Profile not found for the given profileId |
| 500 | Internal server error |
Common Mistakes
- Sending
isExceptional=truewithout also supplying a validrewardTemplateId— the exceptional reward template will not be applied and the system may fall back to defaults. - Using an expired Bearer token; tokens have a 10-minute lifetime and must be refreshed via
POST /api/auth/refreshbefore making this call. - Passing a
profileIdthat belongs to a personal profile when attempting to configure business reward settings — ensure the profile type matches the intended reward configuration. - Omitting all query parameters — the endpoint requires at least one reward setting parameter (
isNew,isExceptional, orrewardTemplateId) to make a meaningful update.
Related Endpoints
POST /api/auth/v2— Obtain a Bearer token for authenticationPOST /api/auth/refresh— Refresh an expiring Bearer tokenGET /netevia/RewardSetting/{profileId}— Retrieve current reward settings for a profilePOST /netevia/Profile— Create a new user profile prior to configuring rewards
Example
curl -X POST "https://api.banking.netevia.dev/netevia/RewardSetting/5817?isExceptional=true&rewardTemplateId=7" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"