Skip to main content
POST /api/v2/storefront/account-mappings/reviews/{intakeId}/request-information Sellers already run credit checks, contracts, tax collection, and vendor onboarding in their own systems — CRM flows, e-signature packets, onboarding portals. This does not invent a hosted forms product: it hands the buyer into your existing process and records that the handoff happened. Calling this keeps the pending buyer intake open and marks it blocked on the buyer. list_accounts and sync_accounts continue to report the account as pending_approval, now carrying a setup object with your message, an expiration, and a launch link scoped to your storefront’s own agent endpoint — never a link you supply directly. The buyer’s agent presents the message as untrusted text and may offer the link to an authorized human; it never treats the message as instructions or opens the link automatically. A case has at most one pending request. Calling this again while that request is still live returns 409 CONFLICT — it does not replace it. Only an expired request is superseded automatically; to replace a live request, wait for it to be confirmed or for it to expire.

Request

Parameters

Response

200 OK with the created request:
url always follows {your storefront's MCP endpoint}/handoffs/{token} — it is never destinationUrl reflected back, and it is bound to this exact case and expiration. The buyer’s agent opens it directly; it does not require a Scope3 session.

Errors

  • 400 VALIDATION_ERROR — the message or destination URL failed the bounds above, or expiresAt is missing, past, or too far out.
  • 401 UNAUTHORIZED — missing or invalid API key.
  • 404 NOT_FOUND — no pending buyer intake with this id under your storefront (or its case exists but isn’t open).
  • 409 CONFLICT — this case already has a pending information request. Wait for it to be confirmed or expire, or read the existing request’s pendingRequestMessage, pendingRequestExpiresAt, and pendingRequestSetupUrl from its row in the review queue (GET /account-mappings/reviews) to see what was already asked, when it expires, and the launch URL to hand back to the buyer — this recovers a POST whose commit succeeded but whose response was lost. The queue row never carries the raw launch token, only the URL built from it.
See Errors for the full error contract.

Confirm buyer information

Record that the material arrived

Buyer Account Mapping

The review queue this case comes from