Get Rewards for User
Retrieves the complete rewards report for the authenticated business customer, including total accumulated points, last period reward details, and a grouped breakdown by reward type. This endpoint is available to business customers only, as rewards are a business-exclusive feature on the Netevia Banking platform. Use it to display reward balances, period summaries, and published report history within your application.
Endpoint
GET /api/UsersReward/Rewards
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 a business customer wants to view their current rewards balance and transaction-level reward history. It is also useful for displaying period-over-period reward summaries or allowing customers to review rewards earned through card transactions, financial account activity, and transfers. Call this endpoint before initiating a rewards redemption to confirm available points.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| reportPeriodId | integer (int32) | No | The ID of a specific reporting period to retrieve. If omitted, returns the most recent period's data. |
Response
200 OK
Top-level response object (usersrewardreports):
| Field | Type | Description |
|---|---|---|
| lastPeriodRewards | array of rewardreportresponse | List of individual reward entries for the most recent (or requested) period. |
| totalPoints | integer (int64) | The customer's total accumulated reward points across all periods. |
| lastPeriodPublished | string (date-time) | Timestamp when the last reward period report was published. Nullable. |
| publishedReports | array of {item1, item2} | List of previously published reward report periods. Each entry contains a date-time (item1) and a period ID (item2). |
| lastPeriodPoints | integer (int64) | Total points earned during the most recent published period. |
| lastPeriodGrouped | array of rewardreportgrouped | Reward totals grouped by reward type for the last period. |
rewardreportresponse object (items in lastPeriodRewards):
| Field | Type | Description |
|---|---|---|
| profileId | integer (int32) | The Netevia profile ID of the customer. Nullable. |
| period | string (date-time) | The reward period date-time this entry belongs to. |
| dba | string | Doing-business-as name associated with the reward entry. Nullable. |
| transactionId | string | The transaction ID that generated this reward. Nullable. |
| totalCashBack | integer (int64) | Total cash back amount (in cents) for this reward entry. |
| agentId | integer (int32) | Internal agent identifier linked to this entry. Nullable. |
| type | integer (int32) | Reward history type code (enum values 1–15). |
| comment | string | Optional comment or note associated with this reward entry. Nullable. |
| percent | number (double) | Reward percentage rate applied. Nullable. |
| templateId | integer (int32) | ID of the rewards template used for this entry. |
| welcome | integer (int32) | Welcome bonus points amount. |
| welcomeSpend | integer (int32) | Spend amount that qualified for the welcome bonus. |
| cashBack | integer (int32) | Standard cash back amount. |
| cashBackExtr | integer (int32) | Extra cash back amount. |
| cashBackExtrCredit | integer (int32) | Credit applied from extra cash back. |
| apr | integer (int32) | APR-related reward amount. |
| aprSpend | integer (int32) | Spend amount associated with APR rewards. |
| manual | integer (int32) | Manually applied reward adjustment amount. |
| extraSpendCashBack | integer (int32) | Cash back earned from extra spend thresholds. |
| payment | integer (int64) | Payment amount associated with this reward entry. |
| points | number (double) | Points earned for this reward entry. |
| typeName | string | Human-readable name for the reward history type. Nullable. |
| amount | integer (int64) | Raw reward amount for this entry. |
| fullName | string | Full name of the customer or authorized user linked to this reward. Nullable. |
| specialMerchant | integer (int32) | Special merchant reward amount, if applicable. |
rewardreportgrouped object (items in lastPeriodGrouped):
| Field | Type | Description |
|---|---|---|
| type | integer (int32) | Reward history type code (enum values 1–15). |
| points | number (double) | Total points earned for this reward type group. |
| typeName | string | Human-readable name for this reward type group. Nullable. |
| amount | integer (int64) | Total amount associated with this reward type group. |
{
"lastPeriodRewards": [
{
"profileId": 10042,
"period": "2026-05-01T00:00:00Z",
"dba": "Acme Corp",
"transactionId": "txn_8a2f3c91d4e0",
"totalCashBack": 250,
"agentId": null,
"type": 1,
"comment": null,
"percent": 1.5,
"templateId": 3,
"welcome": 0,
"welcomeSpend": 0,
"cashBack": 250,
"cashBackExtr": 0,
"cashBackExtrCredit": 0,
"apr": 0,
"aprSpend": 0,
"manual": 0,
"extraSpendCashBack": 0,
"payment": 16667,
"points": 2.50,
"typeName": "Cash Back",
"amount": 250,
"fullName": "Jane Smith",
"specialMerchant": 0
}
],
"totalPoints": 1840,
"lastPeriodPublished": "2026-06-01T00:00:00Z",
"publishedReports": [
{
"item1": "2026-05-01T00:00:00Z",
"item2": 11
},
{
"item1": "2026-04-01T00:00:00Z",
"item2": 10
}
],
"lastPeriodPoints": 320,
"lastPeriodGrouped": [
{
"type": 1,
"points": 2.50,
"typeName": "Cash Back",
"amount": 250
},
{
"type": 5,
"points": 0.70,
"typeName": "Special Merchant",
"amount": 70
}
]
}Error Codes
| Code | When it happens |
|---|---|
| 400 | Invalid reportPeriodId value (e.g., non-integer or out of range) |
| 401 | Token missing, expired, or invalid |
| 403 | Insufficient permissions; this endpoint is restricted to business customers |
| 404 | No reward data found for the specified reportPeriodId |
| 500 | Internal server error |
Common Mistakes
- Calling this endpoint with a personal customer token — rewards are available to business customers only; a 403 will be returned.
- Passing a
reportPeriodIdfrom a period that has not yet been published; use thepublishedReportsarray in the response to confirm valid period IDs before querying. - Assuming
totalPointsreflects only the last period — it is the cumulative lifetime total across all periods, not filtered byreportPeriodId. - Interpreting monetary fields (e.g.,
totalCashBack,payment,amount) as dollars — these values are expressed in cents.
Related Endpoints
POST /api/UsersReward/Redeem— Redeem accumulated reward points to a financial accountGET /api/UsersReward/RewardsSummary— Get a high-level summary of reward balancesGET /api/FinancialAccount/List— List financial accounts available as redemption targets
Example
curl -X GET "https://api.banking.netevia.dev/api/UsersReward/Rewards?reportPeriodId=11" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"