Skip to main content
Applicants can share payroll data, connect bank accounts, or upload documents for a personal lending application. Choose the products and data required by your lending policy.

Choose products

Payroll

Retrieve payroll records for your application or underwriting workflow.

Banking

Use Banking Verifications for income and asset reports.

Document uploads

Receive uploaded files and retrieve OCR and authenticity results when enabled.
Create one Argyle user for the applicant and store the user ID with the application record. Reuse it across products and when the applicant returns.

Payroll

Use the Data APIs when your application needs direct access to payroll records. Common data sets include: If your workflow needs a completed payroll report, use Payroll Verifications.

Connect payroll accounts

Launch embedded Link inside your application, or send an email/SMS invitation. For invitations, store the invite ID with the applicant’s user ID. When your application collects the employer name first, use Employer Search to check coverage. Direct login can take the applicant to a known source. Track each connected account independently. The accounts.connected webhook confirms successful authentication, but does not mean payroll data is ready.

Retrieve payroll data

  1. Retrieve employment information after the identities.added webhook, and handle subsequent identity updates.
  2. Subscribe to the paystubs.partially_synced webhook with config.days_synced set to the history your lending policy requires. Retrieve paystubs using the account and available dates from the webhook.
  3. Also handle the paystubs.fully_synced webhook, because an account can complete without a partial-sync event.
  4. Use the users.fully_synced webhook when waiting for all initial data across the applicant’s newly connected payroll accounts.
Follow Data Delivery and Readiness for multiple accounts, missing partial-sync events, and timeouts. Check that the returned records meet the required history and field requirements before continuing. Use the employment field to match identities, paystubs, and payroll documents for the same job. An account can contain records from multiple jobs. Filtering by employment excludes unmatched records; retrieve all records first when those records are also needed.

Banking

Use Banking Verifications when the applicant will share banking information for an income or asset report.
  1. If the applicant already has a user from payroll or document collection, reuse that user ID. Otherwise, create a user. Update any missing required banking details before ordering the verification.
  2. Order the required report, such as voi for income or voai for assets and income.
  3. Create a session and launch its link with the banking SDK. Hosted banking invitations must be enabled by Argyle before use.
  4. Wait for the verifications.updated webhook and retrieve the report PDF or JSON when its status is completed or completed_with_errors.
Use verification status to determine banking report readiness. Payroll synchronization events do not apply to this path.

Document uploads

Offer documents as an initial option or when an applicant cannot connect an account. A document-upload-only Flow lets the applicant upload files in Link without a payroll connection. If you already collect documents outside Link, upload them through the API. Retrieve files through User Uploads. When OCR is enabled, use OCR completion and failure webhooks to track processing and retrieve the results from metadata.ocr_documents[]. Authenticity results have their own webhook. See OCR and Authenticity for supported documents, result fields, and errors. Doc VOI is designed for mortgage income calculations; standalone document collection and OCR use the User Uploads API.

Incomplete and returning applicants

Subscribe to the accounts.updated webhook with config.include_resource = true for payroll connection status changes. Set an application-level timeout for requests that do not produce the required records.
  • Return the existing user to Reconnect an Account when credentials or MFA need attention.
  • Let the applicant upload additional documents through the same document Flow.
  • Use Ongoing Refresh if it is enabled for your organization and your lending workflow requires records after the initial decision.
For incomplete banking sessions or report errors, follow Recovery and Errors.