Skip to main content
TaxHomeBase uses Anthropic’s Claude API to extract assignment details from staffing agency contracts. Upload a contract PDF or image, and Claude extracts up to 12 fields automatically.

How It Works

1

Open the assignment form in create mode

The “Scan Contract” button is only available when creating a new assignment (not editing). The button is hidden if the server doesn’t have an Anthropic API key configured.
2

Upload the contract

  • Supported formats: PDF, JPEG, PNG
  • Maximum file size: 10MB
  • The file is uploaded to S3 via a presigned URL
3

Claude extracts the data

Claude reads the contract and extracts:
FieldDescription
FacilityHospital or facility name
LocationCity
State2-letter state code
AgencyStaffing agency name
Start DateContract start date
End DateContract end date
Base PayWeekly pre-tax base pay (in cents)
Housing StipendWeekly housing stipend (in cents)
M&IE StipendWeekly meals stipend (in cents)
Sign-On BonusOne-time bonus (in cents)
Completion BonusEnd-of-contract bonus (in cents)
Referral BonusReferral bonus (in cents)
4

Review auto-filled fields

Only empty fields are populated. Review the extracted data and adjust as needed — contracts vary widely in format, and some fields may not be present in every contract.

Pay Rate Conversion

Contracts express pay rates differently. Claude automatically converts:
Contract FormatConversion
Hourly rate× 36 hours (standard nursing week)
Daily rate× 7 days
Monthly rate÷ 4.33 weeks
Dollar amounts× 100 (to cents)

Contract Storage

The uploaded contract is saved with the assignment:
  • contract_s3_key stored in the database
  • “View Contract” button on the expanded assignment card
  • Opens via presigned S3 download URL in a new tab

Feature Availability

Contract scanning requires the optional ANTHROPIC_API_KEY environment variable:
  • Key configured: Scan button visible, GET /contracts/status returns { available: true }
  • Key not configured: Scan button hidden, feature gracefully disabled
  • The rest of TaxHomeBase works fully without it

Error Handling

Step-specific errors with retry:
  • Presign failure — Problem generating the upload URL
  • Upload failure — Problem uploading to S3
  • Claude extraction failure — Problem parsing the contract (e.g., unreadable format, missing data)
Each step shows a distinct error message with an inline retry button.