inital commit

This commit is contained in:
2026-04-10 20:51:43 -05:00
parent cd1f2eae29
commit 562a8525d0
85 changed files with 4820 additions and 2 deletions

46
payment/serializers.py Normal file
View File

@@ -0,0 +1,46 @@
from rest_framework import serializers
from .models import PaymentRecord, WebhookEvent
class PaymentRecordSerializer(serializers.ModelSerializer):
booking_id = serializers.IntegerField(source="booking.id", read_only=True)
class Meta:
model = PaymentRecord
fields = (
"id",
"booking_id",
"stripe_payment_intent_id",
"stripe_charge_id",
"amount",
"currency",
"status",
"created_at",
"updated_at",
)
class CreatePaymentIntentSerializer(serializers.Serializer):
booking_id = serializers.IntegerField()
currency = serializers.CharField(required=False, default="usd", max_length=8)
class MockWebhookSerializer(serializers.Serializer):
stripe_event_id = serializers.CharField(max_length=255)
event_type = serializers.ChoiceField(
choices=(
"payment_intent.processing",
"payment_intent.succeeded",
"payment_intent.payment_failed",
"charge.refunded",
)
)
stripe_payment_intent_id = serializers.CharField(max_length=255)
payload = serializers.JSONField(required=False, default=dict)
class WebhookEventSerializer(serializers.ModelSerializer):
class Meta:
model = WebhookEvent
fields = ("id", "stripe_event_id", "event_type", "processed", "processed_at", "created_at")