<?php
namespace ModulesAbstract\ElectronicInvoice\UBL21Structure;

/**
 * MonetaryTotal
 *
 * @see http://www.datypic.com/sc/ubl21/e-cac_LegalMonetaryTotal.html
 */
class TypeMonetaryTotal extends AbstractPeppolElement
{

	/**
	 * cbc:LineExtensionAmount, 0..1, optional tag
	 *
	 * The monetary amount of an extended transaction line, net of tax and settlement discounts, but inclusive of any
	 *   applicable rounding amount.
	 * @var mixed
	 */
	public $LineExtensionAmount = null;

	/**
	 * cbc:TaxExclusiveAmount, 0..1, optional tag
	 *
	 * The monetary amount of an extended transaction line, exclusive of taxes.
	 * @var mixed
	 */
	public $TaxExclusiveAmount = null;

	/**
	 * cbc:TaxInclusiveAmount, 0..1, optional tag
	 *
	 * The monetary amount including taxes; the sum of payable amount and prepaid amount.
	 * @var mixed
	 */
	public $TaxInclusiveAmount = null;

	/**
	 * cbc:AllowanceTotalAmount, 0..1, optional tag
	 *
	 * The total monetary amount of all allowances.
	 * @var mixed
	 */
	public $AllowanceTotalAmount = null;

	/**
	 * cbc:ChargeTotalAmount, 0..1, optional tag
	 *
	 * The total monetary amount of all charges.
	 * @var mixed
	 */
	public $ChargeTotalAmount = null;

	/**
	 * cbc:PrepaidAmount, 0..1, optional tag
	 *
	 * The total prepaid monetary amount.
	 * @var mixed
	 */
	public $PrepaidAmount = null;

	/**
	 * cbc:PayableRoundingAmount, 0..1, optional tag
	 *
	 * The rounding amount (positive or negative) added to produce the line extension amount.
	 * @var mixed
	 */
	public $PayableRoundingAmount = null;

	/**
	 * cbc:PayableAmount, 1..1, MANDATORY tag
	 *
	 * The amount of the monetary total to be paid.
	 * @var mixed
	 */
	public $PayableAmount = null;

	/**
	 * cbc:PayableAlternativeAmount, 0..1, optional tag
	 *
	 * The amount of the monetary total to be paid, expressed in an alternative currency.
	 * @var mixed
	 */
	public $PayableAlternativeAmount = null;

}
