# HppRecurringPlan

A model the API reference uses in a request or a response. The operation pages link every field typed as this model here.

The recurring-schedule definition inlined onto a `HostedPaymentPage` (and snapshotted
onto the session it creates) for the `SaveCardWithInitialCharge` flow.
Carries the economics a Contract is built from after the initial charge: the recurring amount,
cadence, total payment count, and an optional first-charge override. It is a definition, not a
live schedule: no per-customer state, next-run date, or payment method (those land on the
`Contract` created from it under the paying customer).

## Fields
- `recurringAmount` (number(double)): The amount charged on each recurring payment after the initial charge. (greater than 0)
- `frequency` ([Frequency](https://devportal.demo.winkpg.io/docs/api/models/Frequency.md)): The frequency unit of the recurring schedule (e.g. Monthly, Weekly).
  Values:
  - `Secondly`
  - `Minutely`
  - `Hourly`
  - `Daily`
  - `Weekly`
  - `Monthly`
  - `Yearly`
- `interval` (integer(int32)): The interval multiplier for `frequency` (e.g. `Frequency = Monthly` with  `Interval = 3` is every three months). Defaults to 1. (min 1)
- `numberOfPayments` (integer(int32)): Total number of payments in the schedule, <b>including</b> the initial charge. A Contract  instantiated from this definition covers the payments after the initial charge  (`GetScheduledPaymentCount`). (min 2)
- `initialChargeAmount` (number(double)): Optional override for the first (initial) charge amount. When `null`, the initial charge  uses `recurringAmount`. Lets a merchant charge a different amount up front (e.g. a  setup fee bundled into payment one) while the recurring schedule stays at  `recurringAmount`. Conditional: When InitialChargeAmount is not null. Must be > 0. (nullable)

## See also

- [All documentation](https://devportal.demo.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
