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.
Payroll
Use the Data APIs when your application needs direct access to payroll records. Common data sets include:- Identities for employer, employment status, job, pay, and hire-date information.
- Paystubs for recent income history.
- Payroll Documents when source files are required.
- Deposit Destinations for paycheck-allocation information.
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. Theaccounts.connected webhook confirms successful authentication, but does not mean payroll data is ready.
Retrieve payroll data
- Retrieve employment information after the
identities.addedwebhook, and handle subsequent identity updates. - Subscribe to the
paystubs.partially_syncedwebhook withconfig.days_syncedset to the history your lending policy requires. Retrieve paystubs using the account and available dates from the webhook. - Also handle the
paystubs.fully_syncedwebhook, because an account can complete without a partial-sync event. - Use the
users.fully_syncedwebhook when waiting for all initial data across the applicant’s newly connected payroll accounts.
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.- 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.
- Order the required report, such as
voifor income orvoaifor assets and income. - Create a session and launch its link with the banking SDK. Hosted banking invitations must be enabled by Argyle before use.
- Wait for the
verifications.updatedwebhook and retrieve the report PDF or JSON when its status iscompletedorcompleted_with_errors.
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 frommetadata.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 theaccounts.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.