Get account information after submit

Get Account Information After Submit

The GET /netevia/productApplication endpoint retrieves detailed information about an account following the submission of an application. Partners can use it to check the current approval status, review account holder details, and identify any outstanding requirements such as missing documents or pending verifications. This endpoint is part of the Boarding flow and is typically called after a product application has been submitted.

Endpoint

GET /netevia/productApplication

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 after submitting a product application to check whether it has been approved, rejected, or is still under review. It is also useful for identifying any remaining compliance requirements — such as outstanding document uploads or verification steps — that must be resolved before the account can be activated. Partners typically poll this endpoint or call it in response to a status webhook to drive their onboarding workflow.

Query Parameters

ParameterTypeRequiredDescription
profileIdinteger (int32)NoThe numeric identifier of the customer profile whose application status should be retrieved.

Response

200 OK

The response wraps all data inside a top-level node object.

Top-level node object

FieldTypeDescription
typenamestringInternal type discriminator for the node.
idstringUnique identifier of the application node.
createdAtstring (date-time)ISO 8601 timestamp when the application was created.
updatedAtstring (date-time)ISO 8601 timestamp of the most recent update.
applicationStateobjectCurrent state of the application. Contains status (string).
accountHolderSnapshotobjectSnapshot of the account holder at the time of application (see below).

accountHolderSnapshot object

FieldTypeDescription
typenamestringType discriminator for the account holder.
primaryAuthorizedPersonobjectName and verification status of the primary authorized person.
businessProfileobjectBusiness profile details including beneficial owners and verification status (business accounts only).
nameobjectFull name of the account holder (givenName, familyName, title, suffix).
currentVerificationobjectCurrent verification state of the account holder (see currentVerification below).

currentVerification object (appears on account holder, primary authorized person, business profile, and each beneficial owner)

FieldTypeDescription
statusstringVerification status (e.g., APPROVED, PENDING, DECLINED).
reasonstringHuman-readable explanation when status is not approved.
resultsarray of objectsList of result codes and descriptions from the verification process. Each item has code (string) and description (string).
requiredDocumentsarray of objectsDocuments that must be provided to complete verification (see requiredDocument below).

requiredDocument object

FieldTypeDescription
createdAtstring (date-time)Timestamp when the document requirement was created.
updatedAtstring (date-time)Timestamp of the most recent update to this requirement.
referenceIdentifierstringReference ID for this document requirement.
statusstringCurrent status of the document requirement (e.g., PENDING, SATISFIED).
documentUploadSessionobjectActive upload session details (status, id, primaryDocumentTypes, uploadRequirements).
uploadedDocumentsarray of objectsDocuments already uploaded. Each item contains status, type, createdAt, and updatedAt.

uploadRequirements object (within documentUploadSession)

FieldTypeDescription
constraintsarray of objectsUpload constraints. Each item has documentType (string) and numberOfDocuments (integer).

businessProfile object

FieldTypeDescription
currentVerificationobjectVerification state of the business entity.
ultimateBeneficialOwnersarray of objectsList of beneficial owners, each with name and currentVerification.
{
  "node": {
    "typename": "CardProductApplication",
    "id": "app_01HZ9ABCDEF1234567890",
    "createdAt": "2025-06-01T10:00:00Z",
    "updatedAt": "2025-06-08T14:35:00Z",
    "applicationState": {
      "status": "PENDING"
    },
    "accountHolderSnapshot": {
      "typename": "BusinessAccountHolder",
      "name": {
        "givenName": "Jane",
        "familyName": "Smith",
        "title": "Ms.",
        "suffix": null
      },
      "primaryAuthorizedPerson": {
        "name": {
          "givenName": "Jane",
          "familyName": "Smith",
          "title": null,
          "suffix": null
        },
        "currentVerification": {
          "status": "APPROVED",
          "reason": null,
          "results": [
            {
              "code": "KYC_PASS",
              "description": "Identity verification passed."
            }
          ],
          "requiredDocuments": []
        }
      },
      "businessProfile": {
        "currentVerification": {
          "status": "PENDING",
          "reason": "Additional documentation required.",
          "results": [],
          "requiredDocuments": [
            {
              "createdAt": "2025-06-07T08:00:00Z",
              "updatedAt": "2025-06-08T09:00:00Z",
              "referenceIdentifier": "doc_ref_001",
              "status": "PENDING",
              "documentUploadSession": {
                "status": "OPEN",
                "id": "session_abc123",
                "primaryDocumentTypes": ["ARTICLES_OF_INCORPORATION"],
                "uploadRequirements": [
                  {
                    "constraints": [
                      {
                        "documentType": "ARTICLES_OF_INCORPORATION",
                        "numberOfDocuments": 1
                      }
                    ]
                  }
                ]
              },
              "uploadedDocuments": []
            }
          ]
        },
        "ultimateBeneficialOwners": [
          {
            "name": {
              "givenName": "John",
              "familyName": "Doe",
              "title": null,
              "suffix": null
            },
            "currentVerification": {
              "status": "APPROVED",
              "reason": null,
              "results": [],
              "requiredDocuments": []
            }
          }
        ]
      },
      "currentVerification": {
        "status": "PENDING",
        "reason": "Business verification in progress.",
        "results": [],
        "requiredDocuments": []
      }
    }
  }
}

Error Codes

CodeWhen it happens
400Missing required fields or validation error
401Token missing, expired, or invalid
403Insufficient permissions
404Profile or application not found
500Internal server error

Common Mistakes

  • Omitting the profileId query parameter when multiple profiles exist under a partner account, which may return an unexpected or empty result.
  • Not refreshing the Bearer token before calling this endpoint — tokens expire after 10 minutes and will return a 401 error.
  • Assuming a single currentVerification check is sufficient; both the account holder and the businessProfile have independent verification states that must both reach APPROVED status.
  • Ignoring requiredDocuments in the response — a PENDING status often means documents still need to be uploaded via the document upload session before the application can proceed.

Related Endpoints

  • POST /netevia/productApplication — Submit a new product application for a customer profile.
  • POST /netevia/documentUpload — Upload documents to satisfy outstanding verification requirements.
  • GET /netevia/profile — Retrieve customer profile details.
  • POST /api/auth/v2 — Obtain a Bearer token for authentication.
  • POST /api/auth/refresh — Refresh an existing Bearer token.

Example

curl -X GET "https://api.banking.netevia.dev/netevia/productApplication?profileId=12345" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json"
Query Params
int32
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