diff --git a/erpnext/accounts/doctype/subscription/subscription_state_manager.py b/erpnext/accounts/doctype/subscription/subscription_state_manager.py index 4b9753de260b84c4ba5c226ae59cbd3e0b420891..0992ccac888d8fbe8923a9fbf3abed4552191c6e 100644 --- a/erpnext/accounts/doctype/subscription/subscription_state_manager.py +++ b/erpnext/accounts/doctype/subscription/subscription_state_manager.py @@ -233,6 +233,11 @@ class SubscriptionStateManager: if self.subscription_state.sales_order: if self.order_can_be_generated_before_period_start(): return True + if ( + not self.subscription_state.sales_invoice + and self.subscription.generate_invoice_before_payment + ): + return True return False if self.subscription.generate_invoice_at_period_start: diff --git a/erpnext/accounts/doctype/subscription/subscription_transaction.py b/erpnext/accounts/doctype/subscription/subscription_transaction.py index fec57003ab9c1e9b0efe282b15d17a8bc5e8fe57..1c49cdc375cf6887460fdae5454cd5d1d104f43f 100644 --- a/erpnext/accounts/doctype/subscription/subscription_transaction.py +++ b/erpnext/accounts/doctype/subscription/subscription_transaction.py @@ -338,7 +338,7 @@ class SubscriptionPaymentEntryGenerator(SubscriptionTransactionBase): ) if not bank_account_name: - frappe.thow(_("Please define a default company bank account")) + frappe.throw(_("Please define a default company bank account")) return frappe.get_doc("Bank Account", bank_account_name)