Page MenuHomeDatingVIP

Rebills and step down
Updated 2,714 Days AgoPublic

Rebils ran hourly according to schedule. Current rebill step-down setup looks like this:

NSF NON Prepaid

+-------+------------+-----------+-------------------+
| retry | delay_days | step_down | step_down_percent |
+-------+------------+-----------+-------------------+
|     1 |          3 | no        |              0.00 |
|     2 |          3 | yes       |             20.00 |
|     3 |          3 | yes       |             50.00 |
|     4 |          3 | yes       |             50.00 |
|     5 |          3 | yes       |             50.00 |
+-------+------------+-----------+-------------------+

Step down Prices (we use percent for non defined currencies)

+-------+----------+-------+
| retry | currency | price |
+-------+----------+-------+
|     2 | AUD      | 24.99 |
|     2 | CAD      | 24.99 |
|     2 | EUR      | 24.99 |
|     2 | GBP      | 24.99 |
|     2 | USD      | 24.99 |
|     3 | AUD      | 14.99 |
|     3 | CAD      | 14.99 |
|     3 | EUR      | 14.99 |
|     3 | GBP      | 14.99 |
|     3 | USD      | 14.99 |
|     4 | AUD      |  9.99 |
|     4 | CAD      |  9.99 |
|     4 | EUR      |  9.99 |
|     4 | GBP      |  9.99 |
|     4 | USD      |  9.99 |
|     5 | AUD      |  4.99 |
|     5 | CAD      |  4.99 |
|     5 | EUR      |  4.99 |
|     5 | GBP      |  4.99 |
|     5 | USD      |  4.99 |
+-------+----------+-------+

NSF PREPAID

+-------+------------+-----------+-------------------+
| retry | delay_days | step_down | step_down_percent |
+-------+------------+-----------+-------------------+
|     1 |          1 | yes       |             20.00 |
|     2 |          1 | yes       |             50.00 |
|     3 |          1 | yes       |             50.00 |
|     4 |          1 | yes       |             50.00 |
|     5 |          1 | yes       |             50.00 |
+-------+------------+-----------+-------------------+

Step down Prices (we use percent for non defined currencies)

+-------+----------+-------+
| retry | currency | price |
+-------+----------+-------+
|     1 | AUD      | 24.99 |
|     1 | CAD      | 24.99 |
|     1 | EUR      | 24.99 |
|     1 | GBP      | 24.99 |
|     1 | USD      | 24.99 |
|     2 | AUD      | 14.99 |
|     2 | CAD      | 14.99 |
|     2 | EUR      | 14.99 |
|     2 | GBP      | 14.99 |
|     2 | USD      | 14.99 |
|     3 | AUD      |  9.99 |
|     3 | CAD      |  9.99 |
|     3 | EUR      |  9.99 |
|     3 | GBP      |  9.99 |
|     3 | USD      |  9.99 |
|     4 | AUD      |  4.99 |
|     4 | CAD      |  4.99 |
|     4 | EUR      |  4.99 |
|     4 | GBP      |  4.99 |
|     4 | USD      |  4.99 |
|     5 | AUD      |  1.99 |
|     5 | CAD      |  1.99 |
|     5 | EUR      |  1.99 |
|     5 | GBP      |  1.99 |
|     5 | USD      |  1.99 |
+-------+----------+-------+

Default Decline Plan

+-------+------------+-----------+-------------------+
| retry | delay_days | step_down | step_down_percent |
+-------+------------+-----------+-------------------+
|     1 |          3 | no        |              0.00 |
|     2 |          3 | no        |              0.00 |
|     3 |          3 | no        |              0.00 |
|     4 |          3 | no        |              0.00 |
|     5 |          3 | yes       |             50.00 |
+-------+------------+-----------+-------------------+

Step down Prices (we use percent for non defined currencies)

+-------+----------+-------+
| retry | currency | price |
+-------+----------+-------+
|     5 | AUD      | 14.99 |
|     5 | CAD      | 14.99 |
|     5 | EUR      | 14.99 |
|     5 | GBP      | 14.99 |
|     5 | USD      | 14.99 |
+-------+----------+-------+

Default 3 month Decline Plan

+-------+------------+-----------+-------------------+
| retry | delay_days | step_down | step_down_percent |
+-------+------------+-----------+-------------------+
|     1 |          4 | no        |              0.00 |
|     2 |          4 | no        |              0.00 |
|     3 |          4 | no        |              0.00 |
|     4 |          4 | no        |              0.00 |
+-------+------------+-----------+-------------------+

Notes:

  1. In case of expired cc and failed guess attempt, we immediately suspend subs (no further rebils)
  2. In case of decline with restricted or invalid, codes we immediately suspend subs and mark cc as fraud
  3. For defined step down pricing, if defined step down price is actually bigger than “regular” price, we go down trough defined price retries until we get the one which is lower. For example for NSF PREPAID, if regular rebill price is 2.99USD, we immediately go to retry 4 (so skipping 1,2,3 because defined step down price there is bigger). If each price is bigger, then we suspend subs.
  4. For step downs in percent, if converted currency price is lower than 1USD, we immediately suspend subs.
  5. We’re scheduling rebills in user’s time zone so it’s never between 1am till 4am
  6. We also have list of banned bins, in that case we’re canceling sub (not immediate stop, but no further rebils)
  7. We literally use PHP’s built in Datetime class and calculate date by adding rebill unit (i.e. 1 month). In most situations it literally adds month, like for monthly rebills, it will calculate next rebill date for YYYY-MM-DD as YYYY-(MM+1)-DD. So: 2014-01-01 => 2014-02-01; 2014-05-07 => 2014-06-07; 2014-02-07 => 2014-03-07 etc. The only inconsistency is when next month doesn’t have that day as current month which obviously usually happen on 31st because in most situations it can’t just add month as for example for 2014-03-31 because there’s no 2014-04-31. In such situations PHP seems to go with 31 days so it schedule next rebill to 2014-05-01. And similarly happened with Jan 29th which gets scheduled to March 1st. etc.

UPDATE (2016-05-18): Starting from today every Prepaid CC Decline will be assigned NSF PREPAID PLAN (per T5597).
UPDATE (2016-05-23): Added PCODE_CC_INVALID (PV2 code 601) to the list of rebil suspend codes
UPDATE (2016-05-24): Number of attempts will always match to the one defined in plan, even when some step down retries are skipped (T5624)
UPDATE (2016-05-24): Rebill Plans changed (T5623)
UPDATE (2016-06-29): We are no longer sticking to the same price in case of successful step down, so if we manage successful rebill, for next rebill schedule we set default rebill price according to rebill plan. However since 2016-08-31 according to T6790 we also check last 2 successful rebills and if we have at least two of them, we set the next rebill amount to bigger amount of those two.
UPDATE (2016-11-18): For non-reloadable cards we block rebills or change scheduled amount as explained on T7676

Last Author
dinke
Last Edited
Nov 18 2016, 11:30

Event Timeline

boris moved this document from Unknown Object (Phriction Wiki Document).Mar 11 2015, 13:18
boris changed the visibility from "Public (No Login Required)" to "All Users".
boris changed the visibility from "All Users" to "Public (No Login Required)".
dinke changed the title from Rebills to Rebills and step down.May 13 2016, 13:13
dinke edited the content of this document. (Show Details)
dinke edited the content of this document. (Show Details)
boris shifted this object from the Restricted Space space to the S6 Everyone space.Aug 8 2018, 08:03