mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2025-12-18 06:24:24 +01:00
* Public Invoice receipt * implement payment,s qr, better ui, and fix invoice bug * General view updates * Update admin details link * Update view * add missing check * Refactor * make payments and qr shown by default * move cusotmization options to own ReceiptOptions * Make sure to sanitize values inside PosData partial * Refactor * Make sure that ReceiptOptions for the StoreData is never null, and that values are always set in API * add receipt link to checkout and add tests * add receipt link to lnurl * Use ReceiptOptions.Merge * fix lnurl * fix chrome * remove i18n parameterization * Fix swagger * Update translations * Fix warning Co-authored-by: Dennis Reimann <mail@dennisreimann.de> Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
140 lines
4.0 KiB
C#
140 lines
4.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using BTCPayServer.Client.Models;
|
|
using BTCPayServer.Data;
|
|
using BTCPayServer.Data;
|
|
using BTCPayServer.Payments;
|
|
using BTCPayServer.Payments.Bitcoin;
|
|
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; }
|
|
}
|
|
|
|
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; }
|
|
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;
|
|
}
|
|
|
|
public List<StoreViewModels.DeliveryViewModel> Deliveries { get; set; } = new List<StoreViewModels.DeliveryViewModel>();
|
|
public string TaxIncluded { get; set; }
|
|
|
|
public string TransactionSpeed { get; set; }
|
|
public string StoreId { get; set; }
|
|
public object StoreName
|
|
{
|
|
get;
|
|
internal set;
|
|
}
|
|
public string StoreLink
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
public string PaymentRequestLink
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
public string NotificationUrl
|
|
{
|
|
get;
|
|
internal set;
|
|
}
|
|
|
|
public string RedirectUrl { get; set; }
|
|
public string Fiat
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
public InvoiceMetadata TypedMetadata { get; set; }
|
|
public DateTimeOffset MonitoringDate { get; internal set; }
|
|
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; }
|
|
public bool Archived { get; set; }
|
|
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;
|
|
public List<RefundData> Refunds { get; set; }
|
|
public bool ShowReceipt { get; set; }
|
|
}
|
|
}
|