Skip to main content

Contract Intake

๐ŸŽฌ
Drop a contract PDF in chat โ€” extract โ†’ review โ†’ transaction created in under a minute
Video coming soon

DocJacket can read a contract PDF, pull out the parties, addresses, key dates, and financials, and create the matching transaction.

The standard workflow is the in-app Contract Extraction wizard. External AI contract intake uses the same extraction engine, but it requires AI Access action tools to be enabled for your account. If your connection is read-only, use the in-app wizard to upload, review, and save the transaction.

What you can sayโ€‹

When action tools are enabled, plain English works. The assistant picks the right tools based on what you ask:

"I just got this contract. Set up the deal." [paste or drop the PDF] "Open this purchase agreement and start a transaction." "Process this listing agreement." "Extract this PDF and review with me before creating the deal."

How it worksโ€‹

The assistant walks the workflow for you. Behind the scenes:

  1. Upload. Three paths, in priority order:

    • (a) If the PDF is already in DocJacket (DocDrop, email intake, the web wizard, or a prior chat call): the assistant calls list_documents to discover it, confirms with you ("found 'fl-buyer-purchase.pdf' uploaded at 9:14am โ€” extract it?"), then extract_existing_document(documentId) starts the pipeline. PDF bytes never leave DocJacket. This is the canonical path and works in every assistant (Claude, Cowork, ChatGPT, Codex, Gemini) without any sandbox or paid-plan prerequisites. Just say "extract the contract I uploaded this morning" or "process the file from earlier."
    • (b) If you attached the PDF directly in chat on Claude.ai with code execution enabled (paid plan + mcp.docjacket.com added to allowed domains under Settings โ†’ Capabilities โ†’ Code execution): the assistant uses a two-step presigned upload โ€” request_upload_url returns a short-lived URL, the assistant curls the file from its sandbox to blob storage, then kick_off_extraction starts the pipeline. PDF bytes never enter the chat conversation.
    • (c) Tiny PDF (~under 1 MB) attached in chat with no other option: the assistant falls back to upload_document_for_extraction, which carries the bytes as base64 in the tool call. Avoid this path for anything larger โ€” base64 inflates the file ~33% and lives in chat tokens for the rest of the conversation.

    Either way you get an extractionJobId and extraction kicks off in the background.

  2. Classify. classify_document runs concurrently to detect the doc type โ€” purchase agreement, listing agreement, lease, addendum, disclosure, etc. The classification informs which extraction prompt and checklist to use.

  3. Poll. Extraction typically takes 10โ€“60 seconds depending on document length and complexity. The assistant polls get_extraction_results until the job is completed (or failed, in which case it shows the error and offers to retry).

  4. Review. The assistant presents the extracted fields in chat:

    ๐Ÿ“„ Purchase Agreement โ€” 1247 Pine Street

    Buyer: Sarah Smith (sarah@example.com)
    Seller: John & Mary Johnson
    Price: $625,000 ยท EMD $10,000
    Closing: 2026-06-15
    Inspection: 2026-05-25 (10 business days)
    Financing: 2026-06-01 (conventional, Wells Fargo)
    Listing: Mike Park, Park Realty
    Buyer agent: Casey Spaulding, Spaulding Real Estate

    Want me to create the transaction with these fields?

    You can correct any field inline ("change the closing to June 18"), ask follow-ups ("is Mike Park already in my contacts?"), or just confirm.

  5. Apply. On your "yes," and only when your AI Access connection has action-tool access, the assistant calls apply_extraction, which:

    • Creates the transaction with type detected (purchase / listing / lease) and side (buy / sell)
    • Adds every extracted party as a transaction contact with their role
    • Sets key dates on the transaction timeline (closing, inspection, financing, appraisal, EMD due)
  6. Done. The assistant comes back with the transaction URL. You can keep going in chat with read tools such as get_next_required_actions, or pick up in the DocJacket web app.

What gets extractedโ€‹

CategoryFields
PropertyAddress (street / city / state / zip), MLS number, year built (when present), legal description
PartiesBuyer(s) and seller(s) with names + email/phone when present; listing agent + brokerage; buyer agent + brokerage; lender contact; title company contact
FinancialPurchase price, earnest money amount, loan type, loan amount, down payment, seller concessions
Key datesContract date, closing date, inspection deadline, financing deadline, appraisal deadline, EMD due date, possession date, contingency-removal deadlines
ContingenciesInspection period (calendar or business days), appraisal contingency, financing contingency, sale-of-buyer's-home contingency

Standard state-association forms (TAR, CAR, FAR, MLS contracts) extract with highest accuracy. Custom forms work but may need more review.

What gets createdโ€‹

When you confirm apply_extraction:

  • โœ… Transaction in DocJacket with type + side detected
  • โœ… All parties added as transaction contacts (existing contacts are matched by email when possible to avoid duplicates)
  • โœ… Key dates populated on the timeline โ€” inspection, financing, appraisal, closing, EMD due
  • โœ… Key dates available for timeline/checklist workflows after the transaction is created

Everything is editable in the DocJacket web app afterward.

Limitations to know aboutโ€‹

  • One PDF per call. If the customer sent you a multi-document packet (contract + addenda + disclosures stapled into one PDF), use the in-app Smart Document Splitting wizard first to separate the docs, then run intake on the contract page-range.
  • Purchase deals are most polished. Listing-side and lease intake work but have less per-state customization. If a field looks wrong, just correct it in the review step.
  • Per-state addenda are on the roadmap. Today's extraction handles the main contract well; supplemental state forms (CA TDS, FL HOA disclosure, NJ attorney review rider, etc.) are best added through the web app after the transaction is created.
  • Lead-Based Paint flagging is conservative. The assistant will mention LBP applicability on every deal; if the property was built after 1978, just say "skip LBP" during review.
  • Always review before confirming. Extraction is very good but not perfect. A 15-second scan catches the occasional misread on a smudgy scan or non-standard form.

Recovery โ€” if you lost the chatโ€‹

Extractions don't depend on the chat window โ€” they run server-side and stay queryable. If you closed Claude / Codex / ChatGPT mid-intake, open a new conversation and ask:

"Check my recent DocJacket extractions."

The assistant calls get_intake_status and returns recent jobs with state โ€” processing, completed, or failed. Completed jobs are still applicable; just confirm in the new chat and DocJacket finishes the intake.

Try it nowโ€‹

The fastest way to see it work:

  1. Connect Claude or Codex / ChatGPT if you haven't.
  2. Grab any sample purchase contract PDF.
  3. Drop it in chat and say: "Open this and set up the deal."
  4. Review the extracted fields, fix anything wrong, confirm.
  5. Open DocJacket โ†’ Transactions โ€” the new deal is there with parties, dates, checklist, and reminders.

Read moreโ€‹