35 lines
1.4 KiB
Python
35 lines
1.4 KiB
Python
"""
|
|
URL patterns for business billing module (invoices, payments, credit packages)
|
|
"""
|
|
from django.urls import path, include
|
|
from rest_framework.routers import DefaultRouter
|
|
from .views import (
|
|
InvoiceViewSet,
|
|
PaymentViewSet,
|
|
CreditPackageViewSet,
|
|
CreditTransactionViewSet,
|
|
AdminBillingViewSet,
|
|
AccountPaymentMethodViewSet,
|
|
)
|
|
from igny8_core.modules.billing.views import (
|
|
CreditBalanceViewSet,
|
|
CreditUsageViewSet,
|
|
)
|
|
|
|
router = DefaultRouter()
|
|
router.register(r'invoices', InvoiceViewSet, basename='invoice')
|
|
router.register(r'payments', PaymentViewSet, basename='payment')
|
|
router.register(r'credit-packages', CreditPackageViewSet, basename='credit-package')
|
|
router.register(r'transactions', CreditTransactionViewSet, basename='transaction')
|
|
router.register(r'payment-methods', AccountPaymentMethodViewSet, basename='payment-method')
|
|
# Canonical credits endpoints (unified billing)
|
|
router.register(r'credits/balance', CreditBalanceViewSet, basename='credit-balance')
|
|
router.register(r'credits/usage', CreditUsageViewSet, basename='credit-usage')
|
|
router.register(r'credits/transactions', CreditTransactionViewSet, basename='credit-transactions')
|
|
|
|
urlpatterns = [
|
|
# Country/config-driven available methods (legacy alias)
|
|
path('payment-methods/available/', PaymentViewSet.as_view({'get': 'available_methods'}), name='payment-methods-available'),
|
|
path('', include(router.urls)),
|
|
]
|