Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AFT. Payment Contexts. Account Holder. Other Updates #436

Merged
merged 8 commits into from
Nov 14, 2024
33 changes: 1 addition & 32 deletions src/CheckoutSdk/Common/AccountHolder.cs
Original file line number Diff line number Diff line change
@@ -1,38 +1,7 @@
namespace Checkout.Common
{
public class AccountHolder
public class AccountHolder : AccountHolderBase
{
public AccountHolderType? Type { get; set; }

public string FullName { get; set; }

public string FirstName { get; set; }

public string MiddleName { get; set; }

public string LastName { get; set; }

public string Email { get; set; }

public string Gender { get; set; }

public string CompanyName { get; set; }

public string TaxId { get; set; }

public string DateOfBirth { get; set; }

public CountryCode? CountryOfBirth { get; set; }

public string ResidentialStatus { get; set; }

public Address BillingAddress { get; set; }

public Phone Phone { get; set; }

public AccountHolderIdentification Identification { get; set; }

public bool AccountNameInquiry { get; set; }

}
}
36 changes: 36 additions & 0 deletions src/CheckoutSdk/Common/AccountHolderBase.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
namespace Checkout.Common
{
public class AccountHolderBase
{
public AccountHolderType? Type { get; set; }

public string FullName { get; set; }

public string FirstName { get; set; }

public string MiddleName { get; set; }

public string LastName { get; set; }

public string Email { get; set; }

public string Gender { get; set; }

public string CompanyName { get; set; }

public string TaxId { get; set; }

public string DateOfBirth { get; set; }

public CountryCode? CountryOfBirth { get; set; }

public string ResidentialStatus { get; set; }

public Address BillingAddress { get; set; }

public Phone Phone { get; set; }

public AccountHolderIdentification Identification { get; set; }

}
}
7 changes: 7 additions & 0 deletions src/CheckoutSdk/Common/AccountHolderResponse.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
namespace Checkout.Common
{
public class AccountHolderResponse : AccountHolderBase
{
public AccountNameInquiryType? AccountNameInquiry { get; set; }
}
}
13 changes: 13 additions & 0 deletions src/CheckoutSdk/Common/AccountNameInquiryType.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
using System.Runtime.Serialization;

namespace Checkout.Common
{
public enum AccountNameInquiryType
{
[EnumMember(Value = "full_match")] FullMatch,
[EnumMember(Value = "partial_match")] PartialMatch,
[EnumMember(Value = "no_match")] NoMatch,
[EnumMember(Value = "not_performed")] NotPerformed,
[EnumMember(Value = "not_supported")] NotSupported,
}
}
26 changes: 26 additions & 0 deletions src/CheckoutSdk/Disputes/CompellingEvidence.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;

namespace Checkout.Disputes
{
public class CompellingEvidence
{
public string MerchandiseOrService { get; set; }

public string MerchandiseOrServiceDesc { get; set; }

public DateTime? MerchandiseOrServiceProvidedDate { get; set; }

public ShippingDeliveryStatusType? ShippingDeliveryStatus { get; set; }

public TrackingInformationType? TrackingInformation { get; set; }

public string UserId { get; set; }

public string IpAddress { get; set; }

public ShippingAddress ShippingAddress { get; set; }

public IList<HistoricalTransactions> HistoricalTransactions { get; set; }
}
}
11 changes: 10 additions & 1 deletion src/CheckoutSdk/Disputes/DisputeDetailsResponse.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ namespace Checkout.Disputes
public class DisputeDetailsResponse : HttpMetadata
{
public string Id { get; set; }

public string Reference { get; set; }

public DisputeCategory? Category { get; set; }

Expand All @@ -27,14 +29,21 @@ public class DisputeDetailsResponse : HttpMetadata
public DateTime? ReceivedOn { get; set; }

public DateTime? LastUpdate { get; set; }

public bool? IsCeCandidate { get; set; }

public PaymentDispute Payment { get; set; }

public IList<EvidenceList> EvidenceList { get; set; }

public IList<EvidenceBundle> EvidenceBundle { get; set; }

public string SegmentId { get; set; }

//Not available on Previous

public string EntityId { get; set; }

public string SubEntityId { get; set; }

}
}
15 changes: 14 additions & 1 deletion src/CheckoutSdk/Disputes/DisputeEvidenceRequest.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
using Checkout.Common;
using System.Collections.Generic;

namespace Checkout.Disputes
{
public class DisputeEvidenceRequest
public class DisputeEvidenceRequest : Resource
{
public string ProofOfDeliveryOrServiceFile { get; set; }

Expand Down Expand Up @@ -33,5 +36,15 @@ public class DisputeEvidenceRequest
public string ProofOfDeliveryOrServiceDateFile { get; set; }

public string ProofOfDeliveryOrServiceDateText { get; set; }

public string ArbitrationNoReviewText { get; set; }

public List<string> ArbitrationNoReviewFiles { get; set; }

public string ArbitrationReviewRequiredText { get; set; }

public List<string> ArbitrationReviewRequiredFiles { get; set; }

public CompellingEvidence CompellingEvidence { get; set; }
}
}
12 changes: 12 additions & 0 deletions src/CheckoutSdk/Disputes/DisputeEvidenceResponse.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
using System.Collections.Generic;

namespace Checkout.Disputes
{
public class DisputeEvidenceResponse : HttpMetadata
Expand Down Expand Up @@ -33,5 +35,15 @@ public class DisputeEvidenceResponse : HttpMetadata
public string ProofOfDeliveryOrServiceDateFile { get; set; }

public string ProofOfDeliveryOrServiceDateText { get; set; }

public string ArbitrationNoReviewText { get; set; }

public List<string> ArbitrationNoReviewFiles { get; set; }

public string ArbitrationReviewRequiredText { get; set; }

public List<string> ArbitrationReviewRequiredFiles { get; set; }

public CompellingEvidence CompellingEvidence { get; set; }
}
}
8 changes: 7 additions & 1 deletion src/CheckoutSdk/Disputes/DisputeRelevantEvidence.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@ public enum DisputeRelevantEvidence
RecurringTransactionAgreement,

[EnumMember(Value = "additional_evidence")]
AdditionalEvidence
AdditionalEvidence,

[EnumMember(Value = "arbitration_no_review")]
ArbitrationNoReview,

[EnumMember(Value = "arbitration_review_required")]
ArbitrationReviewRequired
}
}
26 changes: 20 additions & 6 deletions src/CheckoutSdk/Disputes/DisputeStatus.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,23 @@ namespace Checkout.Disputes
{
public enum DisputeStatus
{
[EnumMember(Value = "won")] Won,
[EnumMember(Value = "lost")] Lost,
[EnumMember(Value = "expired")] Expired,
[EnumMember(Value = "accepted")] Accepted,
[EnumMember(Value = "canceled")] Canceled,
[EnumMember(Value = "resolved")] Resolved,
[EnumMember(Value = "won")]
Won,

[EnumMember(Value = "lost")]
Lost,

[EnumMember(Value = "expired")]
Expired,

[EnumMember(Value = "accepted")]
Accepted,

[EnumMember(Value = "canceled")]
Canceled,

[EnumMember(Value = "resolved")]
Resolved,

[EnumMember(Value = "arbitration_won")]
ArbitrationWon,
Expand All @@ -25,5 +36,8 @@ public enum DisputeStatus

[EnumMember(Value = "arbitration_under_review")]
ArbitrationUnderReview,

[EnumMember(Value = "arb_evidence_submitted")]
ArbitrationEvidenceSubmitted,
}
}
17 changes: 17 additions & 0 deletions src/CheckoutSdk/Disputes/DisputesClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ public class DisputesClient : FilesClient, IDisputesClient
private const string DisputesPath = "disputes";
private const string EvidencePath = "evidence";
private const string SubmittedPath = "submitted";
private const string ArbitrationPath = "arbitration";
private const string AcceptPath = "accept";
private const string Schemefiles = "schemefiles";

Expand Down Expand Up @@ -67,13 +68,29 @@ public Task<EmptyResponse> SubmitEvidence(string disputeId, CancellationToken ca
cancellationToken, null);
}

public Task<EmptyResponse> SubmitArbitrationEvidence(string disputeId, CancellationToken cancellationToken = default)
{
CheckoutUtils.ValidateParams("disputeId", disputeId);
return ApiClient.Post<EmptyResponse>(BuildPath(DisputesPath, disputeId, EvidencePath, ArbitrationPath), SdkAuthorization(),
null,
cancellationToken, null);
}

public Task<DisputeCompiledSubmittedEvidenceResponse> GetCompiledSubmittedEvidence(string disputeId,
CancellationToken cancellationToken = default)
{
CheckoutUtils.ValidateParams("disputeId", disputeId);
return ApiClient.Get<DisputeCompiledSubmittedEvidenceResponse>(BuildPath(DisputesPath, disputeId, EvidencePath, SubmittedPath),
SdkAuthorization(), cancellationToken);
}

public Task<DisputeCompiledSubmittedEvidenceResponse> GetCompiledSubmittedArbitrationEvidence(string disputeId,
CancellationToken cancellationToken = default)
{
CheckoutUtils.ValidateParams("disputeId", disputeId);
return ApiClient.Get<DisputeCompiledSubmittedEvidenceResponse>(BuildPath(DisputesPath, disputeId, EvidencePath, ArbitrationPath, SubmittedPath),
SdkAuthorization(), cancellationToken);
}

public Task<SchemeFileResponse> GetDisputeSchemeFiles(string disputeId,
CancellationToken cancellationToken = default)
Expand Down
5 changes: 4 additions & 1 deletion src/CheckoutSdk/Disputes/DisputesQueryFilter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ public class DisputesQueryFilter
public string SubEntityIds { get; set; }

public string PaymentMcc { get; set; }


public string ProcessingChannelIds { get; set; }

public string SegmentIds { get; set; }
}
}
3 changes: 3 additions & 0 deletions src/CheckoutSdk/Disputes/DisputesQueryResponse.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,5 +37,8 @@ public class DisputesQueryResponse : HttpMetadata

public string PaymentMcc { get; set; }

public string ProcessingChannelIds { get; set; }

public string SegmentIds { get; set; }
}
}
19 changes: 19 additions & 0 deletions src/CheckoutSdk/Disputes/EvidenceBundle.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
using System;

namespace Checkout.Disputes
{
public class EvidenceBundle
{
public long? DisputeId { get; set; }

public string Filename { get; set; }

public long? FileSize { get; set; }

public bool? IsFileOversized { get; set; }

public DateTime? CreatedAt { get; set; }

public DateTime? ModifiedAt { get; set; }
}
}
13 changes: 13 additions & 0 deletions src/CheckoutSdk/Disputes/EvidenceList.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
namespace Checkout.Disputes
{
public class EvidenceList
{
public string File { get; set; }

public string Text { get; set; }

public DisputeRelevantEvidence? Type { get; set; }

public string DisputeId { get; set; }
}
}
10 changes: 10 additions & 0 deletions src/CheckoutSdk/Disputes/HistoricalTransactions.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
namespace Checkout.Disputes
{
public class HistoricalTransactions
{
public string HistoricalArn { get; set; }

public string MerchandiseOrServiceDesc { get; set; }

}
}
5 changes: 5 additions & 0 deletions src/CheckoutSdk/Disputes/IDisputesClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,14 @@ Task<EmptyResponse> PutEvidence(string disputeId, DisputeEvidenceRequest dispute
Task<DisputeEvidenceResponse> GetEvidence(string disputeId, CancellationToken cancellationToken = default);

Task<EmptyResponse> SubmitEvidence(string disputeId, CancellationToken cancellationToken = default);

Task<EmptyResponse> SubmitArbitrationEvidence(string disputeId, CancellationToken cancellationToken = default);

Task<DisputeCompiledSubmittedEvidenceResponse> GetCompiledSubmittedEvidence(string disputeId,
CancellationToken cancellationToken = default);

Task<DisputeCompiledSubmittedEvidenceResponse> GetCompiledSubmittedArbitrationEvidence(string disputeId,
CancellationToken cancellationToken = default);

Task<SchemeFileResponse> GetDisputeSchemeFiles(string disputeId, CancellationToken cancellationToken = default);
}
Expand Down
Loading
Loading