Get external account activity

Get External Account Activity

The Get External Account Activity endpoint retrieves a list of recent transactions and activities for an external account linked to a specific user profile. By providing the unique profileId, this endpoint delivers detailed insights into the financial activity of the account, including deposits, withdrawals, and transfers. This allows users and partners to monitor and review external account transaction histories effectively.

Endpoint

GET /netevia/externalAccountActivity/{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 you need to display or audit recent activity on a customer's linked external bank account, such as accounts connected via Finicity or Plaid. It is suitable for building transaction history views, reconciliation dashboards, or monitoring external account movements. You can filter results by date range or by the specific financial account and provider.

Path Parameters

ParameterTypeRequiredDescription
profileIdinteger (int32)YesThe unique identifier of the customer profile whose external account activity is being retrieved

Query Parameters

ParameterTypeRequiredDescription
financialAccountIdstringNoThe ID of a specific financial account to filter activity for
providerstringNoThe external account provider to filter by. Enum: FINICITY, PLAID
dateFromstring (date-time)NoStart of the date range for filtering activity (ISO 8601 format)
dateTostring (date-time)NoEnd of the date range for filtering activity (ISO 8601 format)

Response

200 OK

The response returns a merged data object combining transfer pagination info, transaction pagination info, and the list of activity records.

Top-level response fields:

FieldTypeDescription
transferPageInfoarray of pageInfoPagination info for transfer records
transactionPageInfopageInfo objectPagination info for transaction records
activityarray of activityResponseModelList of merged activity entries (transactions and transfers)

pageInfo object:

FieldTypeDescription
startCursorstringCursor pointing to the start of the current result page
endCursorstringCursor pointing to the end of the current result page
hasNextPagebooleanWhether additional records exist after the current page
hasPreviousPagebooleanWhether records exist before the current page

Activity entry fields (activityResponseModel):

FieldTypeDescription
idstringUnique identifier of the activity record
typenamestringGraphQL type name of the activity (e.g., ACHTransfer, CardTransaction)
namestringDisplay name or label of the activity
typeModelstringModel type classification
pendingAmountamount objectAmount currently pending for this activity
amountamount objectSettled or total amount of the activity
lastEventBalanceSnapshotamount objectAccount balance snapshot at the time of the last event
createdAtstring (date-time)Timestamp when the activity was created
isCompletebooleanWhether the activity has completed processing
transactionSourcesource objectSource details of the transaction
transferStatustransferStatus objectStatus and reason code of the transfer
companyNamestringName of the company associated with the activity
descriptordescriptor objectACH descriptor details including company entry description
toFinancialAccounttransferFinAccount objectDestination financial account details
fromFinancialAccounttransferFinAccount objectSource financial account details
refundEventtransactionEvent objectDetails of the refund event if applicable
lastEventtransactionEvent objectMost recent event associated with this activity
firstEventtransactionEvent objectFirst event associated with this activity
isBetweenOwnAccountsbooleanWhether the transfer is between the customer's own accounts
activityInfoactivityInfo objectProfile and history information for the activity
purposestringPurpose or reason for the activity
giftCardOrderIdstringAssociated gift card order ID if applicable
memostringFree-text memo attached to the activity
fromDBAstringDBA (doing business as) name of the sending party
toDBAstringDBA (doing business as) name of the receiving party

amount object:

FieldTypeDescription
valueinteger (int64)Amount in the smallest currency unit (e.g., cents)
currencyCodestringISO 4217 currency code (e.g., USD)

transferFinAccount object:

FieldTypeDescription
idstringFinancial account identifier
namestringDisplay name of the financial account
last4stringLast 4 digits of the account number
externalBankAccountDetailsexternalBankAccountDetails objectDetails of the linked external bank account
providerstringProvider name (e.g., FINICITY, PLAID)

externalBankAccountDetails object:

FieldTypeDescription
last4stringLast 4 digits of the external account number
typestringAccount type (e.g., CHECKING, SAVINGS)
routingNumberstringBank routing number
createdAtstring (date-time)Timestamp when the external account was linked
updatedAtstring (date-time)Timestamp of the last update to the external account
accountNumberstringFull external account number (sanitized in examples)

transactionEvent object:

FieldTypeDescription
typenamestringType of event
idstringUnique event identifier
merchantDetailsmerchantDetails objectMerchant information for card transactions
pointOfServiceDetailspointOfServiceDetails objectPAN and PIN entry mode details
responseCodestringAuthorization response code
responseDescriptionstringHuman-readable response description
approvedAmountamount objectAmount approved by the network
requestedAmountamount objectAmount originally requested
paymentCardpaymentCardActivity objectPayment card details associated with the event
createdAtstring (date-time)Timestamp when the event was created
authorizationExpirationstring (date-time)Expiration timestamp of the authorization
processingTypestringProcessing type indicator
rewardPointsinteger (int64)Reward points earned or applied on this event
accountingDirectionstringDirection of the accounting entry. Enum: DEBIT, CREDIT

activityInfo object:

FieldTypeDescription
fromProfileprofileInfo objectProfile of the sending party
toProfileprofileInfo objectProfile of the receiving party
historyRecordsarray of historyRecordStatus history of the activity

profileInfo object:

FieldTypeDescription
idinteger (int32)Profile identifier
namestringProfile display name
agentIdinteger (int32)Agent identifier associated with this profile

historyRecord object:

FieldTypeDescription
datestring (date-time)Timestamp of the status change
statusstringStatus value at that point in time

transferStatus object:

FieldTypeDescription
statusstringCurrent transfer status (e.g., PENDING, COMPLETED, FAILED)
statusReasonCodestringReason code for the current status

descriptor object:

FieldTypeDescription
companyEntryDescriptionstringACH company entry description
individualNamestringName of the individual associated with the ACH entry
individualIdentificationNumberstringIdentification number for the individual in the ACH record

merchantDetails object:

FieldTypeDescription
categorystringMerchant category name
categoryCodestringMerchant category code (MCC)
countryCodeAlpha3stringISO 3166-1 alpha-3 country code
descriptionstringMerchant description
namestringMerchant name
merchantIdstringUnique merchant identifier

paymentCardActivity object:

FieldTypeDescription
idstringPayment card identifier
binstringBank identification number (first 6 digits)
last4stringLast 4 digits of the card number

pointOfServiceDetails object:

FieldTypeDescription
panEntryModestringHow the card number was entered (e.g., CONTACTLESS, CHIP)
pinEntryModestringHow the PIN was entered (e.g., PIN_VERIFIED, NOT_APPLICABLE)
{
  "transferPageInfo": [
    {
      "startCursor": "cursor_abc123",
      "endCursor": "cursor_def456",
      "hasNextPage": false,
      "hasPreviousPage": false
    }
  ],
  "transactionPageInfo": {
    "startCursor": "cursor_ghi789",
    "endCursor": "cursor_jkl012",
    "hasNextPage": true,
    "hasPreviousPage": false
  },
  "activity": [
    {
      "id": "txn_7a8b9c0d1e2f",
      "typename": "ACHTransfer",
      "name": "ACH Pull from External Account",
      "typeModel": "Transfer",
      "pendingAmount": {
        "value": 0,
        "currencyCode": "USD"
      },
      "amount": {
        "value": 50000,
        "currencyCode": "USD"
      },
      "lastEventBalanceSnapshot": {
        "value": 125000,
        "currencyCode": "USD"
      },
      "createdAt": "2025-06-01T14:22:00Z",
      "isComplete": true,
      "transactionSource": {
        "typename": "ACHTransfer",
        "id": "src_11223344",
        "transactionEvents": []
      },
      "transferStatus": {
        "status": "COMPLETED",
        "statusReasonCode": null
      },
      "companyName": "Example Corp",
      "descriptor": {
        "companyEntryDescription": "PAYROLL",
        "individualName": "John Doe",
        "individualIdentificationNumber": "ID-00001"
      },
      "toFinancialAccount": {
        "id": "fa_aabbccdd",
        "name": "Main Checking",
        "last4": "1234",
        "externalBankAccountDetails": null,
        "provider": null
      },
      "fromFinancialAccount": {
        "id": "fa_extbank01",
        "name": "External Savings",
        "last4": "5678",
        "externalBankAccountDetails": {
          "last4": "5678",
          "type": "SAVINGS",
          "routingNumber": "021000021",
          "createdAt": "2025-01-15T09:00:00Z",
          "updatedAt": "2025-01-15T09:00:00Z",
          "accountNumber": "XXXXXXXXXX"
        },
        "provider": "PLAID"
      },
      "refundEvent": null,
      "lastEvent": null,
      "firstEvent": null,
      "isBetweenOwnAccounts": true,
      "activityInfo": {
        "fromProfile": {
          "id": 10042,
          "name": "John Doe",
          "agentId": 1
        },
        "toProfile": {
          "id": 10042,
          "name": "John Doe",
          "agentId": 1
        },
        "historyRecords": [
          {
            "date": "2025-06-01T14:22:00Z",
            "status": "INITIATED"
          },
          {
            "date": "2025-06-03T08:00:00Z",
            "status": "COMPLETED"
          }
        ]
      },
      "purpose": "Transfer from linked external savings account",
      "giftCardOrderId": null,
      "memo": null,
      "fromDBA": null,
      "toDBA": null
    }
  ]
}

Error Codes

CodeWhen it happens
400Missing or invalid profileId, malformed dateFrom/dateTo format, or invalid provider enum value
401Token missing, expired, or invalid
403Insufficient permissions to access the specified profile's external account data
404No profile found for the given profileId, or no external account linked to the profile
500Internal server error

Common Mistakes

  • Providing dateFrom and dateTo in a non-ISO 8601 date-time format will result in a 400 error; always use the format YYYY-MM-DDTHH:MM:SSZ.
  • Omitting a valid linked external account will return an empty activity array rather than a 404; verify that the customer has completed external account linking via Finicity or Plaid before calling this endpoint.
  • The provider query parameter must be exactly FINICITY or PLAID (uppercase); any other value will produce a 400 error.
  • Amount values in the response are expressed in the smallest currency unit (cents for USD), so a value of 50000 represents $500.00.
  • This endpoint is marked deprecated; monitor Netevia release notes for the recommended replacement endpoint.

Related Endpoints

  • GET /netevia/externalAccounts/{profileId} — List all external accounts linked to a profile
  • POST /netevia/externalAccount/{profileId} — Link a new external bank account to a profile via Finicity or Plaid
  • DELETE /netevia/externalAccount/{profileId}/{financialAccountId} — Remove a linked external account from a profile
  • GET /netevia/accountActivity/{profileId} — Retrieve internal financial account activity for a profile

Example

curl -X GET "https://api.banking.netevia.dev/netevia/externalAccountActivity/10042?provider=PLAID&dateFrom=2025-06-01T00:00:00Z&dateTo=2025-06-07T23:59:59Z" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json"
Path Params
int32
required
Query Params
string
string
enum
Allowed:
date-time
date-time
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Response

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
text/plain
application/json
text/json