﻿using System.Collections.Generic;

namespace DineroPortableClientSDK.Sales.Invoices.Payments
{
    /// <summary>
    /// Model for invoice payments
    /// </summary>
    public class InvoicePayments : DineroEntity
    {
        /// <summary>
        /// List of payments
        /// </summary>
        public IEnumerable<Payment> Payments { get; set; }

        /// <summary>
        /// The remaining amount to be paid. Might be negative if the invoice is overpaid.
        /// </summary>
        public decimal RemainingAmount { get; set; }

        /// <summary>
        /// The sum of the registered payments on the invoice.
        /// </summary>
        public decimal PaidAmount { get; set; }

        /// <summary>
        /// The total amount of the invoice, including reminder fees, if any.
        /// </summary>
        public decimal InvoiceTotalIncludingReminderExpenses { get; set; }
    }
}