def charge(self, amount, currency="usd", description=None, send_receipt=True, **kwargs):
        if not isinstance(amount, decimal.Decimal):
            raise ValueError(
                "You must supply a decimal value representing dollars."
            )
        resp = StripeCharge.api_create(
            amount=int(amount * 100),  # Convert dollars into cents
            currency=currency,
            customer=self.stripe_id,
            description=description,
            **kwargs
        )
        return resp["id"]
Get or update a contacts information
dataset/ETHPy150Open pydanny/dj-stripe/djstripe/stripe_objects.py/StripeCustomer.charge--crossover with--dataset/ETHPy150Open clione/django-kanban/src/core/userena/contrib/umessages/managers.py/MessageContactManager.update_contact