diff --git a/htdocs/comm/remx.php b/htdocs/comm/remx.php
index f36b4bb0b9e..db1cc06c504 100644
--- a/htdocs/comm/remx.php
+++ b/htdocs/comm/remx.php
@@ -425,12 +425,12 @@ if ($socid > 0) {
print '
'.$langs->trans("ConsumedBy").' | ';
print ''.$langs->trans("AmountHT").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountHT").' | ';
+ print ''.$langs->trans("MulticurrencyAmountHT").' | ';
}
print ''.$langs->trans("VATRate").' | ';
print ''.$langs->trans("AmountTTC").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
+ print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
}
print ''.$langs->trans("DiscountOfferedBy").' | ';
print ' | ';
@@ -563,12 +563,12 @@ if ($socid > 0) {
print ''.$langs->trans("ConsumedBy").' | ';
print ''.$langs->trans("AmountHT").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountHT").' | ';
+ print ''.$langs->trans("MulticurrencyAmountHT").' | ';
}
print ''.$langs->trans("VATRate").' | ';
print ''.$langs->trans("AmountTTC").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
+ print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
}
print ''.$langs->trans("DiscountOfferedBy").' | ';
print ' | ';
@@ -736,12 +736,12 @@ if ($socid > 0) {
print ''.$langs->trans("ConsumedBy").' | ';
print ''.$langs->trans("AmountHT").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountHT").' | ';
+ print ''.$langs->trans("MulticurrencyAmountHT").' | ';
}
print ''.$langs->trans("VATRate").' | ';
print ''.$langs->trans("AmountTTC").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
+ print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
}
print ''.$langs->trans("Author").' | ';
print ' | ';
@@ -897,12 +897,12 @@ if ($socid > 0) {
print ''.$langs->trans("ConsumedBy").' | ';
print ''.$langs->trans("AmountHT").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountHT").' | ';
+ print ''.$langs->trans("MulticurrencyAmountHT").' | ';
}
print ''.$langs->trans("VATRate").' | ';
print ''.$langs->trans("AmountTTC").' | ';
if (!empty($conf->multicurrency->enabled)) {
- print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
+ print ''.$langs->trans("MulticurrencyAmountTTC").' | ';
}
print ''.$langs->trans("Author").' | ';
print ' | ';
diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php
index 28597b90247..d0b0ba331f3 100644
--- a/htdocs/compta/facture/card.php
+++ b/htdocs/compta/facture/card.php
@@ -5522,9 +5522,9 @@ if ($action == 'create') {
) {
print 'id.'&action=converttoreduc" title="'.dol_escape_htmltag($langs->trans("ConfirmConvertToReduc2")).'">'.$langs->trans('ConvertToReduc').'';
}
- // For deposit invoice
+ // For down payment invoice (deposit)
if ($object->type == Facture::TYPE_DEPOSIT && $usercancreate && $object->statut > Facture::STATUS_DRAFT && empty($discount->id)) {
- if (price2num($object->total_ttc, 'MT') == price2num($sumofpaymentall, 'MT')) {
+ if (price2num($object->total_ttc, 'MT') == price2num($sumofpaymentall, 'MT') || ($object->type == Facture::STATUS_ABANDONED && in_array($object->close_code, array('bankcharge', 'discount_vat', 'other')))) {
// We can close a down payment only if paid amount is same than amount of down payment (by definition)
print 'id.'&action=converttoreduc">'.$langs->trans('ConvertToReduc').'';
} else {
diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php
index 59564612cc2..63ef634355f 100644
--- a/htdocs/compta/facture/class/facture.class.php
+++ b/htdocs/compta/facture/class/facture.class.php
@@ -167,7 +167,7 @@ class Facture extends CommonInvoice
public $revenuestamp;
/**
- * ! Closing after partial payment: discount_vat, badsupplier, abandon
+ * ! Closing after partial payment: discount_vat, badcustomer or badsupplier, bankcharge, other
* ! Closing when no payment: replaced, abandoned
* @var string Close code
*/
@@ -424,7 +424,10 @@ class Facture extends CommonInvoice
const STATUS_ABANDONED = 3;
const CLOSECODE_DISCOUNTVAT = 'discount_vat'; // Abandonned remain - escompte
- const CLOSECODE_BADDEBT = 'badcustomer'; // Abandonned - bad
+ const CLOSECODE_BADDEBT = 'badcustomer'; // Abandonned remain - bad customer
+ const CLOSECODE_BANKCHARGE = 'bankcharge'; // Abandonned remain - bank charge
+ const CLOSECODE_OTHER = 'other'; // Abandonned remain - other
+
const CLOSECODE_ABANDONED = 'abandon'; // Abandonned - other
const CLOSECODE_REPLACED = 'replaced'; // Closed after doing a replacement invoice