btcpayserver/BTCPayServer/Models/InvoicingModels/InvoiceDetailsModel.cs

137 lines
3.9 KiB
C#
Raw Normal View History

2020-06-28 21:44:35 -05:00
using System;
using System.Collections.Generic;
2020-07-22 13:58:41 +02:00
using BTCPayServer.Client.Models;
using BTCPayServer.Payments;
using BTCPayServer.Payments.Bitcoin;
2017-10-20 14:06:37 -05:00
using BTCPayServer.Services.Invoices;
using NBitcoin;
using Newtonsoft.Json;
namespace BTCPayServer.Models.InvoicingModels
{
public class OnchainPaymentViewModel
{
public string Crypto { get; set; }
public string Confirmations { get; set; }
public BitcoinAddress DepositAddress { get; set; }
public string Amount { get; set; }
public string TransactionId { get; set; }
public DateTimeOffset ReceivedTime { get; set; }
public string TransactionLink { get; set; }
public bool Replaced { get; set; }
public BitcoinLikePaymentData CryptoPaymentData { get; set; }
public string AdditionalInformation { get; set; }
public decimal NetworkFee { get; set; }
}
public class OffChainPaymentViewModel
{
public string Crypto { get; set; }
public string BOLT11 { get; set; }
public PaymentType Type { get; set; }
}
2020-06-28 17:55:27 +09:00
public class InvoiceDetailsModel
{
public class CryptoPayment
{
public string PaymentMethod { get; set; }
public string Due { get; set; }
public string Paid { get; set; }
public string Address { get; internal set; }
public string Rate { get; internal set; }
public string PaymentUrl { get; internal set; }
2018-05-04 02:01:43 +09:00
public string Overpaid { get; set; }
[JsonIgnore]
public PaymentMethodId PaymentMethodId { get; set; }
public PaymentMethod PaymentMethodRaw { get; set; }
}
public class AddressModel
{
public string PaymentMethod { get; set; }
public string Destination { get; set; }
public bool Current { get; set; }
}
public String Id
{
get; set;
}
public List<CryptoPayment> CryptoPayments
{
get; set;
} = new List<CryptoPayment>();
public InvoiceState State
{
get; set;
}
public InvoiceExceptionStatus StatusException { get; set; }
public DateTimeOffset CreatedDate
{
get; set;
}
public DateTimeOffset ExpirationDate
{
get; set;
}
public string RefundEmail
{
get;
set;
}
2020-11-06 20:42:26 +09:00
public List<StoreViewModels.DeliveryViewModel> Deliveries { get; set; } = new List<StoreViewModels.DeliveryViewModel>();
public string TaxIncluded { get; set; }
public string TransactionSpeed { get; set; }
2020-11-06 20:42:26 +09:00
public string StoreId { get; set; }
public object StoreName
{
get;
internal set;
}
public string StoreLink
{
get;
set;
}
public string PaymentRequestLink
{
get;
set;
}
2021-12-31 16:59:02 +09:00
public string NotificationUrl
{
get;
internal set;
}
2018-01-14 15:01:09 +09:00
public string RedirectUrl { get; set; }
public string Fiat
{
get;
set;
}
public InvoiceMetadata TypedMetadata { get; set; }
public AddressModel[] Addresses { get; set; }
public DateTimeOffset MonitoringDate { get; internal set; }
2018-01-14 21:48:23 +09:00
public List<Data.InvoiceEventData> Events { get; internal set; }
public string NotificationEmail { get; internal set; }
public Dictionary<string, object> PosData { get; set; }
public List<PaymentEntity> Payments { get; set; }
2020-05-07 12:50:07 +02:00
public bool Archived { get; set; }
2020-06-24 17:51:00 +09:00
public bool CanRefund { get; set; }
public bool ShowCheckout { get; set; }
public bool CanMarkSettled { get; set; }
public bool CanMarkInvalid { get; set; }
public bool CanMarkStatus => CanMarkSettled || CanMarkInvalid;
}
}