Generates a detailed spend report for customers based on filters such as date, profile type, agent, and application status.
Display Spend Report Data by Customer
This endpoint generates a detailed spend report for customers based on the provided filters. It returns comprehensive financial data including spending activity, refunds, ATM transactions, ACH transfers, internal transfers, and account balances, along with customer profile details. The report is date-based, allowing partners to track financial activities for a specific period.
Endpoint
POST /Report/spendReport
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 you need a consolidated view of customer spending activity for a given reporting period. It is suitable for financial analysis, compliance reporting, and account management — for example, to review all customers with outstanding balances, filter by agent or ISO, or identify customers by application status. Partners and agents can narrow results by supplying specific profile IDs, agent IDs, or ISO IDs to scope the report to their relevant portfolio.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| reportDate | string (date-time) | Yes | The date for which the report should be generated (ISO 8601 format). |
| agentsId | array of integer (int32) | No | List of agent IDs to filter the report by specific agents. |
| isoId | integer (int32) | No | ISO ID for filtering data by a specific ISO. |
| profileIds | array of integer (int32) | No | List of profile IDs to retrieve data for specific customer profiles. |
| havePoints | boolean | No | When true, includes only customers who have reward points. |
| profileType | integer (int32) | No | Type of profile to query. Enum values: 1, 2, 3, 4, 5 (e.g., personal, business, and subtypes). |
| applicationStatus | string | No | Filter customers by application status. Allowed values: New, Submitted, PendingUW, ApprovedUW, Closed, Cancelled, Pending_Review, Denied, Approved, Pending, InReview, AutoApprovedUW. |
{
"reportDate": "2024-10-01T00:00:00.000Z",
"agentsId": [101, 102],
"isoId": 55,
"profileIds": [2001, 2002, 2003],
"havePoints": false,
"profileType": 2,
"applicationStatus": "Approved"
}Response
200 OK
Returns an array of spend report objects. Each object contains financial activity totals and customer profile information for the specified reporting period.
| Field | Type | Description |
|---|---|---|
| id | integer (int32) | Unique report record ID. |
| userProfileId | integer (int32) | ID of the user profile associated with this report entry. |
| profileId | integer (int32) | ID of the customer profile. |
| period | string (date-time) | The reporting period this entry covers. |
| dayGeneration | string (date-time) | Timestamp when the report entry was generated. |
| spendBalance | integer (int64) | Total spend balance for the customer during the period (in cents). |
| refunds | integer (int64) | Total refund amount issued during the period (in cents). |
| atm | integer (int64) | Total ATM transaction amount during the period (in cents). |
| agentId | integer (int32) | ID of the agent associated with the customer. Nullable. |
| dba | string | Doing Business As (DBA) name of the customer. Nullable. |
| legalName | string | Legal name of the customer or business. Nullable. |
| string | Email address of the customer. Nullable. | |
| firstName | string | First name of the customer. Nullable. |
| lastName | string | Last name of the customer. Nullable. |
| transferACHOut | integer (int64) | Total ACH outbound transfer amount during the period (in cents). |
| transferACHIn | integer (int64) | Total ACH inbound transfer amount during the period (in cents). |
| transferInternal | integer (int64) | Total internal transfer amount during the period (in cents). |
| merchantProfileId | integer (int32) | Merchant profile ID if applicable. Nullable. |
| state | integer (int32) | Numeric code representing the U.S. state associated with the profile (1–53). |
| accountsBalance | integer (int64) | Total balance across all associated financial accounts (in cents). |
| status | string | Current application or account status. Matches bankingapplicationstatus enum values. |
[
{
"id": 8842,
"userProfileId": 1045,
"profileId": 2001,
"period": "2024-10-01T00:00:00.000Z",
"dayGeneration": "2024-10-09T10:37:34.308Z",
"spendBalance": 358400,
"refunds": 5000,
"atm": 20000,
"agentId": 101,
"dba": "Acme Supplies Co.",
"legalName": "Acme Supplies LLC",
"email": "[email protected]",
"firstName": "Jane",
"lastName": "Smith",
"transferACHOut": 100000,
"transferACHIn": 250000,
"transferInternal": 50000,
"merchantProfileId": 3301,
"state": 12,
"accountsBalance": 1520000,
"status": "Approved"
}
]Error Codes
| Code | When it happens |
|---|---|
| 400 | Missing required fields (e.g., reportDate not provided) or validation error on field values |
| 401 | Token missing, expired, or invalid |
| 403 | Insufficient permissions to access report data |
| 404 | No data found for the specified filters |
| 500 | Internal server error |
Common Mistakes
- Omitting the required
reportDatefield — this will result in a 400 error. Always provide a valid ISO 8601 date-time string. - Passing an invalid
applicationStatusvalue not in the allowed enum list (e.g., using"Active"instead of"Approved"), which will cause a validation error. - Providing
profileTypeas a string (e.g.,"business") instead of its integer enum value (e.g.,2). - Expecting monetary values in dollars — all financial amounts (
spendBalance,refunds,atm,transferACHOut,transferACHIn,transferInternal,accountsBalance) are returned in cents.
Related Endpoints
POST /api/auth/v2— Obtain a Bearer token for authenticationPOST /api/auth/refresh— Refresh an expiring Bearer tokenGET /Profile/{profileId}— Retrieve details for a specific customer profileGET /Report/transactionReport— Retrieve transaction-level report data for customers
Example
curl -X POST https://api.banking.netevia.dev/Report/spendReport \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"reportDate": "2024-10-01T00:00:00.000Z",
"agentsId": [101],
"isoId": 55,
"profileIds": [2001, 2002],
"havePoints": false,
"profileType": 2,
"applicationStatus": "Approved"
}'