API documentation

Business translation

Verdacert's certified-translation product (the rest of this docs site) is for things that need a signed certification: USCIS, courts, universities, embassies. Business translation is a separate, parallel product for everything else — marketing copy, internal documents, contracts in review, employee communications. Same model family powers it (Claude), priced per word, no certification statement attached.

Available via v1 API as well as the web flow
Business translation works through both the consumer web flow (/business/translate, /business/quote) and the v1 agent API at /api/v1. See the API section below for the submit/status/result shapes.

The three tiers

Same per-word pricing model across all three; what differs is who (or what) does the translating and how fast it lands.

TierPer wordDeliveryWho does itUse it for
Instant AI$0.04SecondsClaude (Haiku 4.5), no human reviewAny context where a small machine-translation defect rate is acceptable: internal communications, draft marketing copy, contracts under preliminary review.
AI + Human Review (MTPE)$0.10~24hClaude drafts, human post-editor reviews + correctsMost business work where you want a human to vouch for the translation but don't need them working from scratch. Industry-standard middle tier.
Full Human Translation$0.18~48hHuman translator from scratch, no AI involvementBrand-voice content, marketing copy where tone is critical, anything where 'feels like a human wrote it' matters more than 'fast'.

$5 minimum charge on every business order regardless of tier — covers the Stripe per-transaction floor on tiny inputs. Specialty-language multiplier (Pashto, Dari, Tigrinya, Amharic, Kurdish, etc.) applies to the human tiers; the AI tier is flat $0.04/word regardless of language pair.

How to order

Instant AI

Visit /business/translate. Paste text or upload a PDF / Word doc / plain text / image (we extract automatically). Pick source and target languages. See the price live. Pay via Stripe Checkout. Translation appears on the result page in seconds and is emailed to you.

Anonymous checkout works — email is captured at the Stripe step. Self-serve cancellation is available for ~60 seconds after payment (full refund, one click).

MTPE and Full Human

Visit /business/quote. Same form, plus a tier selector. After payment the order lands in the human-review queue and a Verdacert reviewer or translator picks it up. You'll get a delivery email when it's ready — typically well under the SLA cap.

B2B volume-tier discount

Firms on Standard or Premium volume tiers get the same discount on business translation that they already get on certified work.

TierDiscount
Firm Starter (default)0%
Firm Standard20%
Firm Premium38%

The discount applies automatically when a firm member is signed in and ordering from /business/translate or /business/quote. The applied tier appears on the live price block (“Firm Premium · 38% off applied”) before checkout, and the firm portal at /portal/business-translations shows every business order placed by anyone on the firm.

Discount applies before the $5 minimum-charge floor: a $20 raw job at Premium becomes $12.40, not floored to $5.

What “not certified” actually means

Every business translation output is clearly labeled Machine Translation — not certified on the result page, in the delivery email, and in the order confirmation. It does notinclude a signed certification statement from a competent translator under 8 CFR § 103.2(b)(3).

Which means USCIS, US courts, universities, embassies, and most regulated filings will reject a business translation if you submit it as a certified document. For those use cases, place a separate certified order at /order/start — the USCIS-acceptance guarantee (refund if rejected) is the differentiator.

When in doubt, default to certified
If you're unsure whether you need certified or non-certified translation, default to certified. The cost difference per page is small relative to the cost of a rejected filing.

v1 API

Same endpoints as the certified flow (quote → submit → status → result), with productLine set to one of business_ai / business_mtpe / business_human. AI tier returns status='ready' on the submit response (translation runs inline); MTPE / Full Human return status='in_review' and fire an order.ready webhook when admin completes.

Quote

Get a price. For business tiers, supply wordCount in place of pageCount.

curl -X POST https://verdacert.com/api/v1/quote \
  -H "Authorization: Bearer vc_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "sourceLanguage": "es",
    "targetLanguage": "en",
    "wordCount": 1500,
    "speedTier": "standard",
    "productLine": "business_ai"
  }'

Submit

AI tier requires sourceText. MTPE / Full Human accept either sourceText or documents (URLs to PDF / DOCX / image).echoedInput must match what you sent to quote().

curl -X POST https://verdacert.com/api/v1/submit \
  -H "Authorization: Bearer vc_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "quoteId": "q_abcd1234_1700000000000_xyz789",
    "idempotencyKey": "your-retry-safe-token",
    "sourceText": "Hola, este es el texto a traducir...",
    "endUser": { "externalId": "your-user-id", "email": "user@example.com" },
    "webhookUrl": "https://your-app.com/webhooks/verdacert",
    "echoedInput": {
      "sourceLanguage": "es",
      "targetLanguage": "en",
      "wordCount": 1500,
      "speedTier": "standard",
      "productLine": "business_ai"
    }
  }'

AI submit returns immediately with status: “ready” in the typical case (a few seconds). MTPE / Full Human return status: “in_review” with estimatedCompletionAt set per tier SLA.

Status + Result

Same shape as certified. result() returns the translated text inline in a new text field, plus a business_text artifact with a data: URL for agents that iterate artifacts. certification is null and acceptanceGuarantee.uscis is false — these are non-certified outputs, do not route to USCIS.

{
  "jobId": "ord_...",
  "orderNumber": "VC-...",
  "text": "Hello, this is the translated text...",
  "artifacts": [{
    "kind": "business_text",
    "url": "data:text/plain;charset=utf-8;base64,...",
    "sha256": "...",
    "pageCount": 1,
    "expiresAt": "..."
  }],
  "certification": null,
  "acceptanceGuarantee": { "uscis": false, "refundIfRejectedUrl": "..." }
}

Webhooks

Same event types as certified: order.created fires on submit, order.ready when the translation is delivered (immediately for AI; on admin completion for MTPE / Full Human), order.failed on translation error, order.cancelled if the customer self-cancels within the 60-second window. Webhook URL can be set per submission via webhookUrl or globally on the API key.

No certified-tier features apply
Business orders do not get signed JWS certificates, USCIS-acceptance guarantee, or the wall-clock sandbox state machine. capabilities.addons is ignored. draftTranslation is rejected (that field is for certified review_and_certify only).

Data handling

Business translation runs through the same Anthropic zero-data-retention contract as the certified pipeline. Source text and generated translations are not retained for model training. Per-account translation memory is logically isolated. Files uploaded to /business/translate or /business/quote land in our Cloudflare R2 bucket encrypted at rest (AES-256), purged on order completion (or 7 days after, whichever is later).

Get instant quotePricing