adds `before_insert` methods:
- set current_invoice_start
- set current_invoice_end
diff --git a/erpnext/accounts/doctype/subscriptions/subscriptions.py b/erpnext/accounts/doctype/subscriptions/subscriptions.py
index 1c667f8..353e83d 100644
--- a/erpnext/accounts/doctype/subscriptions/subscriptions.py
+++ b/erpnext/accounts/doctype/subscriptions/subscriptions.py
@@ -5,6 +5,25 @@
 from __future__ import unicode_literals
 import frappe
 from frappe.model.document import Document
+from frappe.utils.data import now, nowdate, getdate, cint, add_days, date_diff, get_last_day, get_first_day
+from frappe import _
+
+
+SUBSCRIPTION_SETTINGS = frappe.get_single('Subscription Settings')
+
 
 class Subscriptions(Document):
-	pass
+	def before_insert(self):
+		# update start just before the subscription doc is created
+		self.update_subscription_period()
+
+	def update_subscription_period(self):
+		self.set_current_invoice_start()
+		self.set_current_invoice_end()
+
+	def set_current_invoice_start(self, date=None):
+		if not date:
+			self.current_invoice_start = nowdate()
+
+	def set_current_invoice_end(self):
+		self.current_invoice_end = get_last_day(self.current_invoice_start)