(event)
Handle updates to customer objects.

    First determines the crud_type and then handles the event if a customer
    exists locally.
    As customers are tied to local users, djstripe will not create customers that
    do not already exist locally.

    And updates to the subscriber model and metadata fields of customer if present
    in checkout.sessions metadata key.

    Docs and an example customer webhook response:
    https://stripe.com/docs/api#customer_object
Handle updates to customer objects.
Handle updates to customer objects .
def customer_webhook_handler(event):
    """Handle updates to customer objects.

    First determines the crud_type and then handles the event if a customer
    exists locally.
    As customers are tied to local users, djstripe will not create customers that
    do not already exist locally.

    And updates to the subscriber model and metadata fields of customer if present
    in checkout.sessions metadata key.

    Docs and an example customer webhook response:
    https://stripe.com/docs/api#customer_object
    """
    # will recieve all events of the type customer.X.Y so
    # need to ensure the data object is related to Customer Object
    target_object_type = event.data.get("object", {}).get("object", {})

    if event.customer and target_object_type == "customer":

        metadata = event.data.get("object", {}).get("metadata", {})
        customer_id = event.data.get("object", {}).get("id", "")
        subscriber_key = djstripe_settings.SUBSCRIBER_CUSTOMER_KEY

        # only update customer.subscriber if both the customer and subscriber already exist
        update_customer_helper(metadata, customer_id, subscriber_key)

        _handle_crud_like_event(target_cls=models.Customer, event=event)
def customer_webhook_handler ( event ) : # will recieve all events of the type customer.X.Y so # need to ensure the data object is related to Customer Object target_object_type = event . data . get ( "object" , { } ) . get ( "object" , { } ) if event . customer and target_object_type == "customer" : metadata = event . data . get ( "object" , { } ) . get ( "metadata" , { } ) customer_id = event . data . get ( "object" , { } ) . get ( "id" , "" ) subscriber_key = djstripe_settings . SUBSCRIBER_CUSTOMER_KEY # only update customer.subscriber if both the customer and subscriber already exist update_customer_helper ( metadata , customer_id , subscriber_key ) _handle_crud_like_event ( target_cls = models . Customer , event = event )