diff --git a/src/TrueLayer/Payments/Model/GetPaymentResponse.cs b/src/TrueLayer/Payments/Model/GetPaymentResponse.cs
index 17c19f4e..ebda3f74 100644
--- a/src/TrueLayer/Payments/Model/GetPaymentResponse.cs
+++ b/src/TrueLayer/Payments/Model/GetPaymentResponse.cs
@@ -76,19 +76,21 @@ public record Authorizing : PaymentDetails;
///
/// Represents a payment that has been authorized by the end user
+ /// The date and time that TrueLayer determined that the payment was ready to be credited
///
///
[JsonDiscriminator("authorized")]
- public record Authorized : PaymentDetails;
+ public record Authorized(DateTime? CreditableAt) : PaymentDetails;
///
/// Represents a payment that has been executed
/// For open loop payments this state is terminal. For closed-loop payments, wait for Settled.
///
/// The date and time the payment executed
+ /// The date and time that TrueLayer determined that the payment was ready to be credited
///
[JsonDiscriminator("executed")]
- public record Executed(DateTime ExecutedAt) : PaymentDetails;
+ public record Executed(DateTime ExecutedAt, DateTime? CreditableAt) : PaymentDetails;
///
/// Represents a payment that has settled
@@ -97,9 +99,10 @@ public record Executed(DateTime ExecutedAt) : PaymentDetails;
/// The date and time the payment executed
/// The date and time the payment was settled
/// Details of the source of funds for the payment
+ /// The date and time that TrueLayer determined that the payment was ready to be credited
///
[JsonDiscriminator("settled")]
- public record Settled(DateTime ExecutedAt, DateTime SettledAt, PaymentSource PaymentSource) : PaymentDetails;
+ public record Settled(DateTime ExecutedAt, DateTime SettledAt, PaymentSource PaymentSource, DateTime? CreditableAt) : PaymentDetails;
///
/// Represents a payment that failed to complete. This is a terminal state.
diff --git a/test/TrueLayer.AcceptanceTests/PaymentTests.cs b/test/TrueLayer.AcceptanceTests/PaymentTests.cs
index 9e91b408..844b84c4 100644
--- a/test/TrueLayer.AcceptanceTests/PaymentTests.cs
+++ b/test/TrueLayer.AcceptanceTests/PaymentTests.cs
@@ -58,7 +58,7 @@ public PaymentTests(ApiTestFixture fixture)
[Theory]
[MemberData(nameof(ExternalAccountPaymentRequests))]
- public async Task can_create_external_account_payment(CreatePaymentRequest paymentRequest)
+ public async Task Can_Create_External_Account_Payment(CreatePaymentRequest paymentRequest)
{
var response = await _fixture.Client.Payments.CreatePayment(
paymentRequest, idempotencyKey: Guid.NewGuid().ToString());
@@ -139,7 +139,7 @@ public async Task can_create_merchant_account_gbp_verification_Payment()
}
[Fact]
- public async Task can_create_merchant_account_eur_Payment()
+ public async Task Can_Create_Merchant_Account_Eur_Payment()
{
var paymentRequest = CreateTestPaymentRequest(
new Provider.Preselected("mock-payments-fr-redirect",
@@ -169,7 +169,7 @@ public async Task can_create_merchant_account_eur_Payment()
}
[Fact]
- public async Task Can_create_payment_with_auth_flow()
+ public async Task Can_Create_payment_with_auth_flow()
{
var sortCodeAccountNumber = new AccountIdentifier.SortCodeAccountNumber("567890", "12345678");
var providerSelection = new Provider.Preselected("mock-payments-gb-redirect", "faster_payments_service")
@@ -204,7 +204,7 @@ public async Task Can_create_payment_with_auth_flow()
[Theory]
[MemberData(nameof(ExternalAccountPaymentRequests))]
- public async Task Can_get_authorization_required_payment(CreatePaymentRequest paymentRequest)
+ public async Task Can_Get_Authorization_Required_Payment(CreatePaymentRequest paymentRequest)
{
var response = await _fixture.Client.Payments.CreatePayment(
paymentRequest, idempotencyKey: Guid.NewGuid().ToString());
@@ -250,7 +250,7 @@ var getPaymentResponse
}
[Fact]
- public async Task Can_create_payment_with_retry_option_and_get_attemptFailed_error()
+ public async Task Can_Create_Payment_With_Retry_Option_And_Get_AttemptFailed_Error()
{
// Arrange
var paymentRequest = CreateTestPaymentRequest(