from django.urls import include, path from rest_framework.routers import DefaultRouter from .views import ( AppViewSet, EntitlementViewSet, InvoiceViewSet, PaymentGatewayViewSet, PaymentTransactionViewSet, PlanViewSet, SubscriptionViewSet, WebhookViewSet, ) router = DefaultRouter() router.register(r"gateways", PaymentGatewayViewSet, basename="billing-gateways") router.register(r"apps", AppViewSet, basename="billing-apps") router.register(r"plans", PlanViewSet, basename="billing-plans") router.register(r"entitlements", EntitlementViewSet, basename="billing-entitlements") router.register(r"subscriptions", SubscriptionViewSet, basename="billing-subscriptions") router.register(r"invoices", InvoiceViewSet, basename="billing-invoices") router.register(r"transactions", PaymentTransactionViewSet, basename="billing-transactions") urlpatterns = [ path("", include(router.urls)), path( "checkout/", SubscriptionViewSet.as_view({"post": "checkout"}), name="billing-checkout", ), path( "webhook/receive/", WebhookViewSet.as_view({"post": "receive"}), name="billing-webhook-receive", ), path( "webhook//", WebhookViewSet.as_view({"post": "receive"}), name="billing-webhook-provider", ), ]