Flexible Payments #57355

Closed
opened 2018-10-23 14:46:18 +02:00 by Sybren A. Stüvel · 3 comments

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 #57675)
  • 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¼)
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 #57675) - 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¼)
Author
Owner

Added subscriber: @dr.sybren

Added subscriber: @dr.sybren
Author
Owner

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sybren A. Stüvel self-assigned this 2018-11-13 12:09:35 +01:00
Author
Owner

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.

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.
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: infrastructure/devfund-website#57355
No description provided.