Document upload

Allow users to manually upload their income verification documents.

Document upload is supported starting from the following Link SDK versions: Android 3.4.0, iOS 3.4.0, RN 3.5.0.


In the rare case your user cannot find their employer or payroll provider in Argyle Link—or is unsuccessful after a login attempt—you can give them the option to quickly and easily upload W-2 and 1099 forms, and paystubs to verify their income.

The document upload feature is disabled by default. You can activate it on the Link Customizer page in the Argyle Console.

Document upload flow

Once enabled, there are two situations that trigger the document upload flow:

  • If a user does not find their employer, they are given the alternative to upload their documents. They are then redirected to a form prompting them to enter their employer name and payroll platform:
  • If a user submits invalid login credentials, they are prompted to upload documents:

You can customize the button text to meet your needs through Link Customizer.

Both paths lead the users to the following document upload flow:

Note: all files are checked for viruses and a file will be rejected if a virus is found.

Supported document types

Currently, we support three document types for upload:

  • Paystub: outlines the details of the user's pay for each pay period.
  • W-2: includes wage and salary information as well as federal, state, and other taxes that were withheld.
  • 1099: is used to declare income other than wages, salaries, and tips.

If you want to accept only certain document types, you can select which in the Link Customizer.

Enable and configure the document upload flow

Document upload is enabled and configured via the Link Customizer.

You can configure:

  • When document upload flow should be triggered (based on the two scenarios described above).
  • Select which document types you want to accept.
  • Header, descriptions, and button texts.
  • Whether documents are required or optional and specify the min/max number of documents to be uploaded.

Retrieve the uploaded documents via the API


Document upload is powered by the Argyle form framework—a flexible solution for showing dynamic forms to users in any context.

Argyle introduced forms to surface questions and prompts to users and capture their inputs in various scenarios such as:

  • A user is unable to locate their income source in Argyle Link
  • A user fails to log in to their income source in Argyle Link

In either of these situations, users will be given the option to fill out an Argyle form. Forms may include free-text fields, drop-down selections or document upload prompts. The Link Customizer can be used to configure certain aspects of the Argyle forms to better meet your needs and your customers' expectations.

As the form framework evolves, additional field types and enhanced levels of customization will be made available.

Retrieve uploaded documents

You can retrieve uploaded documents via the forms endpoint. A single form object will contain all documents uploaded by the user. Use the account ID to call the /forms?account=<accounnt-id> and obtain the document url.

Use the url value to retrieve the file. This url is valid for only one hour. We recommend transferring the file to your system as soon as possible.


Get notified when documents are uploaded or deleted by subscribing to the following webhooks:

  • forms.submitted - triggered when the user submits the final page of the form.
  • forms.removed - triggered when the user clicks the Remove all documents button and all previously uploaded documents are deleted.

Webhook payloads will include the account ID, user ID, and the form ID:


What are the file restrictions for type and size?

Currently, we support PDF files with a max size of 16 MB each.

What happens if the user uploads a file with the same hash?

We check the file name and hash on the backend before uploading and inform the user that a duplicate file has been selected.

Are the files encrypted?

The customer-managed encryption keys are used to encrypt the files.