namespace QRBee.Core.Data { public record PaymentResponse { public string ServerTransactionId { get; set; } public string GatewayTransactionId { get; set; } public PaymentRequest PaymentRequest { get; set; } public DateTime ServerTimeStampUTC { get; set; } public bool Success { get; set; } public string RejectReason { get; set; } public string ServerSignature { get; set; } /// /// Convert PaymentResponse to string to be encrypted and transmitted back to merchant /// /// Converted string public string AsDataForSignature() => $"{ServerTransactionId}|{GatewayTransactionId}|{PaymentRequest.AsString()}|{ServerTimeStampUTC:yyyy-MM-dd:HH.mm.ss.ffff}|{Success}|{RejectReason}"; } }