Skip to main content
The prequalification endpoint is a powerful affordability calculator that goes far beyond traditional mortgage calculators. Unlike other affordability tools that are blind to pricing and guidelines, Pylon’s prequalification endpoint validates against all guidelines and pricing across all takeouts to determine maximum affordability within eligible products.

Why use prequalification?

All products at once

Returns maximum affordability across all products in a single call, rather than requiring separate calculations per product.

Guideline-aware

Validates against all encoded guidelines and pricing rules, ensuring accurate qualification estimates.

Minimal input

Requires only 8 pieces of information to get comprehensive affordability results.

Real-time pricing

Uses live rates and guidelines at the time of calculation, not static assumptions.

How it works

Prequalification is an asynchronous operation. When you create a prequalification request, it returns a job ID that you must poll to get the results.
1

Create prequalification

Submit a mutation with borrower information to create a prequalification job.
2

Receive job ID

The mutation returns a job ID that you’ll use to poll for results.
3

Poll for completion

Poll the prequalification query endpoint until the job status indicates completion.
4

Retrieve results

Once complete, fetch the results showing maximum affordability across all eligible products.

Creating a prequalification

To create a prequalification, you need 8 pieces of information:

Required input fields

Optional input fields

Response

The mutation returns a job ID:
Save the id from the response. You’ll use it to poll for results.

Polling for results

After creating a prequalification, poll the query endpoint to check the job status and retrieve results:

Job status

The status field indicates the current state of the prequalification:

Polling strategy

Implement exponential backoff when polling to avoid excessive API calls:
Polling intervals: Start with 2-5 second intervals and increase gradually. Most prequalifications complete within 10-30 seconds, but complex scenarios may take longer.

Understanding results

When the prequalification completes, the result field contains maximum affordability information:

Result fields

The result field is the best eligible result across all products:
The top-level result represents the best eligible product. Use the productBreakdown array to show borrowers per-product results, including ineligibility details when a product does not qualify.

Complete example

Here’s a complete TypeScript example that creates a prequalification and polls for results:

Best practices

  1. Handle errors gracefully: When status is FAILED, surface a meaningful message to borrowers and offer to retry.
  2. Set reasonable timeouts: Most prequalifications complete within 30 seconds, but set a maximum timeout (e.g., 2-3 minutes) to avoid indefinite polling.
  3. Cache results: Prequalification results are valid for a period of time. Consider caching results with the input parameters as a key to avoid redundant calculations.
  4. Show product breakdown: Display results per product so borrowers can see which products offer the highest affordability.
  5. Explain limitations: Help borrowers understand that prequalification is an estimate and actual qualification may vary based on complete application details.
  6. Use for lead qualification: Prequalification is perfect for initial borrower conversations to quickly assess affordability before creating a full loan application.

Error handling

Common error scenarios and how to handle them: