# Payment Plans

Payment Plans let a customer pay off a total amount in fixed installments charged automatically to a card on file. A plan created without a payment method collects installment 1 on a registered Dejavoo terminal and stores that card for the remaining installments. This surface is gated per account and is off by default — contact Chaching to enable it.

 - [POST /payment-plans](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_createpaymentplan.md)
 - [GET /payment-plans](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_listpaymentplans.md)
 - [POST /payment-plans/{id}/payments](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_createpaymentplanpayment.md): Charges a stored payment method, records a payment collected elsewhere (external: true), or takes the payment on one of your registered Dejavoo terminals (payment_method: { "type": "terminal", "termin
 - [GET /payment-plans/{id}/payments/{payment_id}](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_retrievepaymentplanpayment.md)
 - [POST /payment-plans/{id}/payments/{payment_id}/resolve](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_resolveterminalpayment.md): Continues a terminal payment whose outcome is not known yet (terminal.state resolving) or whose approval was not recorded yet (approved_no_credential, or a payment still processing), and answers 200 w
 - [POST /payment-plans/{id}/payments/{payment_id}/cancel](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_cancelterminalpayment.md): Asks the terminal to cancel the sale that is waiting for the customer and answers 202 with the payment. The sale ends cancelled when the terminal reports the cancellation; poll GET /payment-plans/{id}
 - [GET /payment-plans/{id}](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_retrievepaymentplan.md)
 - [GET /payment-plans/{id}/installments](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_listinstallments.md)
 - [POST /payment-plans/{id}/cancel](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_cancelpaymentplan.md)
 - [POST /payment-plans/{id}/deposit/terminal](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_startterminaldeposit.md): Sends installment 1 of a payment plan created without a payment method to a registered Dejavoo terminal and answers 202 with the payment plan. The customer pays at the terminal; poll GET /payment-plan
 - [POST /payment-plans/{id}/deposit](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_resolvedeposit.md): Continues a terminal deposit whose outcome is not known yet (deposit.attempt.state resolving) or whose card was charged but not saved (approved_no_credential), and answers 200 with the payment plan. C
 - [POST /payment-plans/{id}/deposit/cancel](https://chaching.redocly.app/developer-guide/api/payment-plans/paymentplanscontroller_cancelterminaldeposit.md): Asks the terminal to cancel the sale that is waiting for the customer and answers 202 with the payment plan. The attempt ends cancelled when the terminal reports the cancellation; poll GET /payment-pl
