I'm tasked to predict if a receipt will be paid or not.

I know how to build a classification model that says, on day 0, if the receipt will be paid or not. But how would one build a model to run everyday, not just day 0? For my training set, do I need to build a data point for each day each receipt hasn't been paid?

In this industry, nothing really helps between day 0 and day X, generally the customer has no activity, as such the data fed to a model will most likely be the same, but at the same time, as days go by, inevitably the probability of payment will go down.

How can one tackle this problem?


2 Answers 2


I would start empirically. Take all customers who are open on day 0 (lets assume that is the day after their previous payment). How many pay? Now move up 1 day (the 2nd day after their previous payment). How many pay? Then repeat until end of study. You need to decide what day 0 is, then align all customers from the past. You now have a probability of any customer paying on each day from day 0. You can calculate what is the expected number of customers paying today by calculating how many customers are n days away from day 0.

Then if there is some additional way to break customers down - such as high value policy vs low value policy, or life insurance vs home owners insurance or ... that may help accuracy.

Next, but much more complicated and it may not work, is look into a survival model. Specifically here a discrete time survival model. The time variable will change so there is a change that can be used by the model. However if that is all that changes, then the model might not be able to do better than an empirical model. Maybe it can find some cut values of insurance size or type or some other feature.

I can think of 1 or 2 other ways. But if you are the only analyst, I think you stick to something that should get good results and be quick to develop, explain and redevelop. That would be empirically. Just need to determine what your day 0 - first day of the month, first day from previous payment, etc. - then align all customers then calculate.


You can consider days as a feature in the model. From historical payments , you can calculate the day of payment.

New contributor
amol goel is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.