---
title: "Review and file a returned vendor W-9"
method: POST
path: "/vendors/{id}/w9-file"
tags: ["Vendors"]
---

# Review and file a returned vendor W-9

`POST /vendors/{id}/w9-file`

## Request

- Base URL: `https://ledgerhq.pro/api/v1`
- URL: `https://ledgerhq.pro/api/v1/vendors/{id}/w9-file`
- Auth: one of:
  - HTTP bearer and API key in header `x-organization-id`
  - HTTP bearer and API key in header `x-organization-id`

Files a PDF/image that arrived on the vendor's tracked W-9 request. Records the original protected attachment, request, tax year, reviewer, and received date; then marks the vendor W-9 received and resolves the request. Outbound or unrelated attachments cannot be filed. This route and the W-9 request route are the only writers of a vendor's w9Status: ordinary vendor create/update cannot mark a W-9 received. The stored tax year is collection provenance, not an annual expiry. Requires manage:contacts and an idempotency-key header.

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `requestId` string, uuid, required
  - `attachmentId` string, uuid, required
  - `taxYear` integer, required

## Response `200`

Idempotent replay

## Other responses

- `201`: W-9 filed and request resolved
- `400`: Attachment is not a PDF or image
- `404`: Vendor, request, or inbound attachment not found
- `default`: Error response

---

[API](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api.md) · [All operations](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/revisions/9a8269f0a586?raw)
