2018-07-24 15:16:50 +02:00
|
|
|
import stripe.error as error
|
|
|
|
import stripe.util as util
|
2018-08-03 12:38:16 +02:00
|
|
|
from stripe.api_resources.list_object import SubscriptionListObject
|
2018-07-24 15:16:50 +02:00
|
|
|
|
|
|
|
from typing import Optional, Any, Dict, List
|
|
|
|
|
|
|
|
api_key: Optional[str]
|
|
|
|
|
|
|
|
class Customer:
|
|
|
|
default_source: Card
|
|
|
|
created: int
|
|
|
|
id: str
|
2018-08-03 12:38:16 +02:00
|
|
|
subscriptions: SubscriptionListObject
|
2018-07-24 15:16:50 +02:00
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def retrieve(customer_id: str, expand: Optional[List[str]]) -> Customer:
|
|
|
|
...
|
2018-07-26 15:45:51 +02:00
|
|
|
|
2018-07-24 15:16:50 +02:00
|
|
|
@staticmethod
|
|
|
|
def create(description: str, metadata: Dict[str, Any], source: str) -> Customer:
|
|
|
|
...
|
|
|
|
|
|
|
|
class Invoice:
|
|
|
|
amount_due: int
|
2018-07-26 15:45:51 +02:00
|
|
|
|
2018-07-24 15:16:50 +02:00
|
|
|
@staticmethod
|
|
|
|
def upcoming(customer: str) -> Invoice:
|
|
|
|
...
|
|
|
|
|
|
|
|
class Subscription:
|
|
|
|
created: int
|
|
|
|
status: str
|
2018-07-26 15:45:51 +02:00
|
|
|
canceled_at: int
|
2018-07-26 16:10:07 +02:00
|
|
|
cancel_at_period_end: bool
|
2018-07-26 15:45:51 +02:00
|
|
|
|
2018-07-24 15:16:50 +02:00
|
|
|
@staticmethod
|
|
|
|
def create(customer: str, billing: str, items: List[Dict[str, Any]],
|
|
|
|
prorate: bool, tax_percent: float) -> Subscription:
|
|
|
|
...
|
|
|
|
|
|
|
|
class Card:
|
|
|
|
last4: str
|
|
|
|
|
|
|
|
class Plan:
|
|
|
|
id: str
|
2018-07-26 15:45:51 +02:00
|
|
|
|
2018-07-24 15:16:50 +02:00
|
|
|
@staticmethod
|
|
|
|
def create(currency: str, interval: str, product: str, amount: int,
|
|
|
|
billing_scheme: str, nickname: str, usage_type: str) -> Plan:
|
|
|
|
...
|
|
|
|
|
|
|
|
class Product:
|
|
|
|
id: str
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
def create(name: str, type: str, statement_descriptor: str, unit_label: str) -> Product:
|
|
|
|
...
|