This commit is contained in:
2025-11-04 02:16:17 +01:00
parent 8dd4f6e731
commit 47b9770a70
5 changed files with 402 additions and 261 deletions

View File

@@ -1,37 +1,21 @@
from rest_framework import serializers
class GoPayCreatePaymentRequestSerializer(serializers.Serializer):
amount = serializers.DecimalField(max_digits=12, decimal_places=2, min_value=0.01)
currency = serializers.CharField(required=False, default="CZK")
order_number = serializers.CharField(required=False, allow_blank=True, default="order-001")
order_description = serializers.CharField(required=False, allow_blank=True, default="Example GoPay payment")
return_url = serializers.URLField(required=False)
notify_url = serializers.URLField(required=False)
preauthorize = serializers.BooleanField(required=False, default=False)
class GoPayRefundROSerializer(serializers.Serializer):
id = serializers.IntegerField()
amount_cents = serializers.IntegerField(allow_null=True)
reason = serializers.CharField(allow_null=True, allow_blank=True)
provider_refund_id = serializers.CharField(allow_null=True)
created_at = serializers.DateTimeField()
class GoPayPaymentCreatedResponseSerializer(serializers.Serializer):
id = serializers.IntegerField()
state = serializers.CharField()
gw_url = serializers.URLField(required=False, allow_null=True)
class GoPayStatusResponseSerializer(serializers.Serializer):
id = serializers.IntegerField()
state = serializers.CharField()
class GoPayRefundRequestSerializer(serializers.Serializer):
amount = serializers.DecimalField(max_digits=12, decimal_places=2, required=False, min_value=0.01)
class GoPayCaptureRequestSerializer(serializers.Serializer):
amount = serializers.DecimalField(max_digits=12, decimal_places=2, required=False, min_value=0.01)
class GoPayCreateRecurrenceRequestSerializer(serializers.Serializer):
amount = serializers.DecimalField(max_digits=12, decimal_places=2, min_value=0.01)
currency = serializers.CharField(required=False, default="CZK")
order_number = serializers.CharField(required=False, allow_blank=True, default="recur-001")
order_description = serializers.CharField(required=False, allow_blank=True, default="Recurring payment")
class GoPayPaymentROSerializer(serializers.Serializer):
id = serializers.IntegerField()
order = serializers.IntegerField(allow_null=True)
amount_cents = serializers.IntegerField()
currency = serializers.CharField()
status = serializers.CharField()
refunded_amount_cents = serializers.IntegerField()
gw_url = serializers.URLField(allow_null=True)
provider_payment_id = serializers.IntegerField(allow_null=True)
created_at = serializers.DateTimeField()
updated_at = serializers.DateTimeField()