---
title: "Check what's still missing before submitting"
method: POST
path: "/v1/customers/{customerId}/verifications/preflight"
tags: ["Onboarding"]
---

# Check what's still missing before submitting

`POST /v1/customers/{customerId}/verifications/preflight`

## Request

- Base URL: `https://api.sandbox.alfredpay.io`
- URL: `https://api.sandbox.alfredpay.io/v1/customers/{customerId}/verifications/preflight`
- Auth: one of:
  - HTTP bearer
  - API key in header `api-key` and API key in header `api-secret`

Evaluates the draft submission and everything uploaded so far against the requirement set, and tells you what's still outstanding while it can all still be edited. This is the difference between one clean submission and a rejection round trip.

It changes nothing, and it's the one documented exception to the idempotency rule. It takes no `Idempotency-Key`, is never replayed, and every call returns a fresh evaluation of the current draft. Sending a key is ignored rather than rejected.

## Response `200`

OK

- PreflightResult
  - `ready` boolean
  - `outstanding` object[]
    - `kind` 'field' | 'document' | 'relatedPerson'
    - `name` string
    - `relatedPersonId` string, nullable
    - `reason` string

## Other responses

- `404`: The resource does not exist, or belongs to another partner.

## Changes

- **2026-11-03** `20fef4fd2ab3`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/alfredpay/apis/alfred-penny-api-client-documentation/changes/v1/customers/:customerId/verifications/preflight/post.md)

---

[API](https://skmtc.dev/alfredpay/apis/alfred-penny-api-client-documentation.md) - [All operations](https://skmtc.dev/alfredpay/apis/alfred-penny-api-client-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/alfredpay/apis/alfred-penny-api-client-documentation/revisions/20fef4fd2ab3?raw)
