Prices the plan exactly as the preview does and rejects what the preview would reject. Then, in one command transaction: each sold card's pledge is disposed (marked sold, reason Sold - collateral cure plan {id}) and its latest valuation is recorded on the loan as a settled payment, reducing principal; each added card - from addCertNumbers or newCards - is locked and pledged; and the payment is recorded. All added cards are locked in one call just before they are pledged (only the added cards are sent to an external provider, not the cards the loan already holds); a refused lock is a 400 and rolls the whole plan back. Sale proceeds above the loan's total outstanding are a 400. Once that has committed the payment runs - PAYMENT_LINK emails a link using exactly templateId + templateVersion; ACH_ON_FILE initiates a debit from paymentInstrumentId (PENDING until it settles or fails); PORTAL is recorded only.
A payment that fails at that point is returned as a FAILED PAY item on a 200 - the rest of the plan stands and is not rolled back. A refused collateral lock (including a newCards card with no collectors_id when the tenant locks at Collectors) is a 400 that rolls the plan back. Rejected with a 400 before anything is written: everything the preview rejects, an empty plan, a card that can't be pledged, PAYMENT_LINK without templateId/templateVersion or with a template that is not an active email template whose version is ACTIVE and carries payment_link.url, a borrower with no email, ACH_ON_FILE without paymentInstrumentId, and any plan - partial or full - while an earlier cure plan's payment is still processing on the loan (validation.msg.collateral.curePlan.payment.inProcessing, parameter payment: "A payment from an earlier cure plan is still processing. Wait for it to settle or fail before submitting another plan."). Processing means an ACH_ON_FILE PAY item still PENDING, or a PAY item whose payment (including one made through a payment link) is PENDING or PROCESSING; a link that was sent but never paid and a PORTAL payment do not block.
Requires CREATE_COLLATERAL_CURE_PLAN, plus CREATE_PAYMENT_LINK for PAYMENT_LINK or INITIATE_PAYMENT for ACH_ON_FILE.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
