Orders and refunds

Read a retained purchase status

Keep recovery.purchase_id and recovery.status_token from the response body; MCP uses result.structuredContent.recovery (legacy refusals: error.data.recovery), and paid pages use the base64-JSON Purchase-Recovery header. Free, even after payment expiry: GET recovery.status_url with Authorization: Bearer <status_token>, or check_purchase(purchase_id,status_token). Keep token private. recovery_state=pending: poll after retry_after_seconds (not a delivery deadline). delivery_state=not_established_by_this_record means this journal lacks the goods, not proof that goods were never delivered. Use fulfillment when ready; orders still need completion. purchase_input_mismatch is not temporary (HTTP 409/MCP error): read status or retry original inputs with recovery.original_door and recovery.original_path. Do not pay again.

get/api/purchase-status/{purchase_id}

Request

  • Base URL: https://scvd.store
  • URL: https://scvd.store/api/purchase-status/{purchase_id}
  • Auth: HTTP bearer

Path parameters

purchase_idstring required

The purchase_id in the recovery response.

Response

Original purchase request, terms, and recorded payment state

recovery_state'pending' | 'ready' | 'not_settled' | 'resolved'

Recovery readiness, separate from payment and human-work completion.

next_action'read_purchase_status' | 'use_fulfillment' | 'review_unsettled_purchase' | 'read_resolution'
retry_after_secondsinteger nullable

Suggested delay before another free status read while recovery is pending; not a delivery deadline. Null when no recovery poll is advised.

settlement_attemptedfalse

This status read never submits payment.

purchase_idstring required
payment_state'unknown' | 'settled' | 'not_settled' required
chargedboolean nullable required
requeststring required
termsobject required
delivery_statestring required

The retained record may establish delivery, an order, or a resolution. Settlement alone does not establish delivery.

Changes

No recorded changes to this operation across all 1 revision of this API.