shop.payment_providers.paypal_checkout ====================================== .. py:module:: shop.payment_providers.paypal_checkout Attributes ---------- .. autoapisummary:: shop.payment_providers.paypal_checkout.logger Classes ------- .. autoapisummary:: shop.payment_providers.paypal_checkout.PayPalCheckout Module Contents --------------- .. py:data:: logger .. py:class:: PayPalCheckout(*, client_id, client_secret, sandbox = False, client_logging_configuration = None, **kwargs) Bases: :py:obj:`shop.payment_providers.PaymentProviderAbstract` PayPal Checkout integration for the ViUR Shop. Supports multiple payment methods through PayPal Checkout, including PayPal, credit card, and more. Handles the checkout process, payment state checks, and webhook handling for payment updates. .. py:attribute:: name :type: Final[str] :value: 'paypal_checkout' .. py:attribute:: client :type: paypalserversdk.paypal_serversdk_client.PaypalServersdkClient .. py:method:: get_checkout_start_data(order_skel) .. py:method:: checkout(order_skel) Create an order to start the transaction. @see https://developer.paypal.com/docs/api/orders/v2/#orders_create .. py:method:: charge(order_skel, payment = None) .. py:method:: check_payment_state(order_skel) .. py:method:: return_handler() .. py:method:: webhook(*args, **kwargs) Webhook for PayPal. Listens to all events, but handle PAYMENT.CAPTURE.COMPLETED as backup currently only. .. py:method:: get_debug_information(*, order_key = None, payment_id = None) Get information about a payment / order. :param order_key: Key of the order skeleton. :param payment_id: PayPal ID of the order / payment. .. py:method:: capture_order(order_key, order_id) Capture payment for the created order to complete the transaction. Has to be called by the Frontend after the user has approved the payment. @see https://developer.paypal.com/docs/api/orders/v2/#orders_capture .. py:method:: model_to_dict(obj) :classmethod: Convert any nested PayPal model to dict representation