Page MenuHome

Flexible Payments
Closed, ResolvedPublicTO DO

Description

People should be able to pay what they want whenever they want, and it should add to the extension of their Membership.

  • Paying more: shift next_payment_date of their membership
  • Order should be generated on the fly when performing the payment (rather than at subscription creation time).
  • Minimum initial payment is one period.
  • Reminder X days/weeks before expiry (maybe based on the period last paid for, e.g. when you pay for a month you get a notification one or two weeks before it expires, but when you pay for a full year you get it a month or two before it expires). (not part of this task; see T57675)
  • Should also be available for automatic payment, as it just extends when the next automatic payment will happen.
  • Assumes the price of a Membership is a constant amount per day, regardless of the originally chosen plan variation (e.g. price per month = price per year / 12, price per day = price per year / 365¼)

Event Timeline

Sybren A. Stüvel (sybren) lowered the priority of this task from 90 to Normal.Oct 23 2018, 2:46 PM
Sybren A. Stüvel (sybren) created this task.
Sybren A. Stüvel (sybren) changed the task status from Unknown Status to Resolved.Nov 13 2018, 12:09 PM
Sybren A. Stüvel (sybren) claimed this task.

Shifting next_payment date by pay-whatever-you-want is implemented in 72843f3. Note that this does not allow manual payments.

Instead of computing price per day and working with that, the price per month is used. This gives less roundoff errors (as monetary amounts are always entire cents). The amount paid is translated into N months + M days, where N is integer and M is fractional.