diff --git a/src/CheckoutSdk/Payments/Downtime.cs b/src/CheckoutSdk/Payments/Downtime.cs
new file mode 100644
index 00000000..d5209899
--- /dev/null
+++ b/src/CheckoutSdk/Payments/Downtime.cs
@@ -0,0 +1,11 @@
+namespace Checkout.Payments
+{
+ public class Downtime
+ {
+ ///
+ /// Indicates if Checkout.com retries the payment when it's declined due to issuer or acquirer downtime
+ /// (Required)
+ ///
+ public bool Enabled { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/src/CheckoutSdk/Payments/Dunning.cs b/src/CheckoutSdk/Payments/Dunning.cs
new file mode 100644
index 00000000..73a1541f
--- /dev/null
+++ b/src/CheckoutSdk/Payments/Dunning.cs
@@ -0,0 +1,16 @@
+namespace Checkout.Payments
+{
+ public class Dunning
+ {
+ ///
+ /// Indicates if Checkout.com retries the payment when it's declined with a supported decline code (Required)
+ ///
+ public bool Enabled { get; set; }
+
+ /// (Optional, [ 1 .. 15 ], default: 6)
+ public int? MaxAttempts { get; set; } = 6;
+
+ /// (Optional, [ 1 .. 60 ] default: 30)
+ public int? EndAfterDays { get; set; } = 30;
+ }
+}
\ No newline at end of file
diff --git a/src/CheckoutSdk/Payments/Request/PaymentRequest.cs b/src/CheckoutSdk/Payments/Request/PaymentRequest.cs
index 562d5361..23d7ba33 100644
--- a/src/CheckoutSdk/Payments/Request/PaymentRequest.cs
+++ b/src/CheckoutSdk/Payments/Request/PaymentRequest.cs
@@ -72,10 +72,10 @@ public class PaymentRequest
public IList Items { get; set; }
- public PaymentRetryRequest Retry { get; set; }
+ public RetryRequest Retry { get; set; }
public IDictionary Metadata { get; set; } = new Dictionary();
public PaymentInstruction Instruction { get; set; }
}
-}
\ No newline at end of file
+}
diff --git a/src/CheckoutSdk/Payments/RetryRequest.cs b/src/CheckoutSdk/Payments/RetryRequest.cs
new file mode 100644
index 00000000..bbf7a6ba
--- /dev/null
+++ b/src/CheckoutSdk/Payments/RetryRequest.cs
@@ -0,0 +1,11 @@
+namespace Checkout.Payments
+{
+ public class RetryRequest
+ {
+ /// Configuration of asynchronous Dunning retries (Optional)
+ public Dunning Dunning { get; set; }
+
+ /// Configuration of asynchronous Downtime retries (Optional)
+ public Downtime Downtime { get; set; }
+ }
+}
\ No newline at end of file