CnmlPricingResult
Per-product CNML (Cash Now, More Later / Sell With Upside) pricing result. offerStatus
is always non-null and exposes the native SwU lifecycle state (see CnmlOfferStatus).
denialInfo is set for the negative states (NOT_ELIGIBLE, DECLINED, WITHDRAWN);
offerData is set for positive states (ELIGIBLE, ACCEPTED, ACQUISITION_PROCEEDS_PAID,
RESALE_PROCEEDS_PAID). The entire cnml field on OfferRequestWithProductsPricing
is null for partners that do not offer SELL_WITH_UPSIDE.
Underwriting readiness is independent of Cash eligibility and CNML product acceptance.
Definition
Section titled “Definition”type CnmlPricingResult { offerStatus: CnmlOfferStatus! denialInfo: DenialInfo underwritingState: UnderwritingState underwritingCompletedAt: String offerData: CnmlOfferData}Fields
Section titled “Fields”| Field | Type | Description |
|---|---|---|
offerStatus | CnmlOfferStatus! | — |
denialInfo | DenialInfo | — |
underwritingState | UnderwritingState | Underwriting state for the underlying offer linked to CNML’s active offer. Available even when Sell Direct is DENIED / PRODUCT_INACTIVE. APPROVED means underwriting completed successfully; UNKNOWN means draft or escalated; WALKED means Opendoor decided not to proceed after underwriting. Null when the active offer linkage or its underwriting state is unavailable. Neither ACCEPTED nor pricing alone guarantees approval. Do not treat null or UNKNOWN as APPROVED. |
underwritingCompletedAt | String | Recorded underwriting completion time for the same active underlying offer, as an ISO 8601 timestamp. Null when unavailable. Use underwritingState, not this timestamp alone, to determine approval. |
offerData | CnmlOfferData | — |