Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def _on_payment_failure_later(self):
assert self.status in ('open', 'void')
if self.status == 'void':
self.status_transitions['voided_at'] = int(time.time())
schedule_webhook(Event('invoice.payment_failed', self))
if self.subscription:
sub = Subscription._api_retrieve(self.subscription)
if sub.status == 'incomplete':
sub._on_initial_payment_failure_later(self)
else:
sub._on_recurring_payment_failure(self)
self.invoice_settings = invoice_settings
self.business_vat_id = business_vat_id
self.preferred_locales = preferred_locales
self.metadata = metadata or {}
self.account_balance = 0
self.delinquent = False
self.discount = None
self.shipping = None
self.default_source = None
self.sources = List('/v1/customers/' + self.id + '/sources')
self.tax_ids = List('/v1/customers/' + self.id + '/tax_ids')
self.tax_ids._list = [TaxId(customer=self.id, **data)
for data in tax_id_data]
schedule_webhook(Event('customer.created', self))
# All exceptions must be raised before this point.
super().__init__(id)
self.name = name
self.type = type
self.active = active
self.caption = caption
self.description = description
self.attributes = attributes
self.shippable = shippable
self.url = url
self.statement_descriptor = statement_descriptor
self.metadata = metadata or {}
schedule_webhook(Event('product.created', self))