diff --git a/packages/server/src/models/Bill.ts b/packages/server/src/models/Bill.ts
index 2d6299ce7..c2e6eb3f4 100644
--- a/packages/server/src/models/Bill.ts
+++ b/packages/server/src/models/Bill.ts
@@ -136,7 +136,7 @@ export default class Bill extends mixin(TenantModel, [
return R.compose(
R.add(adjustmentAmount),
- R.subtract(this.discountAmount),
+ R.subtract(R.__, this.discountAmount),
R.when(R.always(this.isInclusiveTax), R.add(this.taxAmountWithheld))
)(this.subtotal);
}
diff --git a/packages/server/src/models/SaleReceipt.ts b/packages/server/src/models/SaleReceipt.ts
index 220bb4d83..7c60634f3 100644
--- a/packages/server/src/models/SaleReceipt.ts
+++ b/packages/server/src/models/SaleReceipt.ts
@@ -49,6 +49,9 @@ export default class SaleReceipt extends mixin(TenantModel, [
'total',
'totalLocal',
+ 'adjustment',
+ 'adjustmentLocal',
+
'discountAmount',
'discountPercentage',
@@ -119,6 +122,14 @@ export default class SaleReceipt extends mixin(TenantModel, [
return this.total * this.exchangeRate;
}
+ /**
+ * Adjustment amount in local currency.
+ * @returns {number}
+ */
+ get adjustmentLocal() {
+ return this.adjustment * this.exchangeRate;
+ }
+
/**
* Detarmine whether the sale receipt closed.
* @return {boolean}
diff --git a/packages/server/src/services/Purchases/VendorCredits/VendorCreditTransformer.ts b/packages/server/src/services/Purchases/VendorCredits/VendorCreditTransformer.ts
index b42c90ea0..8cc36ba7f 100644
--- a/packages/server/src/services/Purchases/VendorCredits/VendorCreditTransformer.ts
+++ b/packages/server/src/services/Purchases/VendorCredits/VendorCreditTransformer.ts
@@ -20,6 +20,7 @@ export class VendorCreditTransformer extends Transformer {
'discountAmountFormatted',
'discountPercentageFormatted',
'adjustmentFormatted',
+ 'totalFormatted',
'entries',
'attachments',
];
@@ -118,6 +119,15 @@ export class VendorCreditTransformer extends Transformer {
});
};
+ /**
+ * Retrieves the formatted total.
+ * @param {IVendorCredit} credit
+ * @returns {string}
+ */
+ protected totalFormatted = (credit) => {
+ return formatNumber(credit.total, { currencyCode: credit.currencyCode });
+ };
+
/**
* Retrieves the entries of the bill.
* @param {IVendorCredit} vendorCredit
diff --git a/packages/webapp/src/containers/Drawers/BillDrawer/BillDetailTableFooter.tsx b/packages/webapp/src/containers/Drawers/BillDrawer/BillDetailTableFooter.tsx
index 558d0f1ca..eb6846afb 100644
--- a/packages/webapp/src/containers/Drawers/BillDrawer/BillDetailTableFooter.tsx
+++ b/packages/webapp/src/containers/Drawers/BillDrawer/BillDetailTableFooter.tsx
@@ -42,7 +42,7 @@ export function BillDetailTableFooter() {
textStyle={TotalLineTextStyle.Regular}
/>
)}
- {bill.adjustment > 0 && (
+ {bill.adjustment_formatted && (
)}
- {creditNote.adjustment > 0 && (
+ {creditNote.adjustment_formatted && (
)}
- {receipt.adjustment > 0 && (
+ {receipt.adjustment_formatted && (
}
- value={vendorCredit.formatted_amount}
+ value={vendorCredit.total_formatted}
borderStyle={TotalLineBorderStyle.DoubleDark}
textStyle={TotalLineTextStyle.Bold}
/>
diff --git a/packages/webapp/src/containers/Drawers/VendorCreditDetailDrawer/VendorCreditDetailHeader.tsx b/packages/webapp/src/containers/Drawers/VendorCreditDetailDrawer/VendorCreditDetailHeader.tsx
index 989b1b245..fac1f8494 100644
--- a/packages/webapp/src/containers/Drawers/VendorCreditDetailDrawer/VendorCreditDetailHeader.tsx
+++ b/packages/webapp/src/containers/Drawers/VendorCreditDetailDrawer/VendorCreditDetailHeader.tsx
@@ -5,7 +5,6 @@ import styled from 'styled-components';
import { defaultTo } from 'lodash';
import {
- FormatDate,
T,
Row,
Col,
@@ -29,13 +28,14 @@ export default function VendorCreditDetailHeader() {
- {vendorCredit.formatted_amount}
+ {vendorCredit.total_formatted}
+
diff --git a/packages/webapp/src/containers/Sales/Invoices/InvoiceForm/utils.tsx b/packages/webapp/src/containers/Sales/Invoices/InvoiceForm/utils.tsx
index 530a70dd4..c069fd903 100644
--- a/packages/webapp/src/containers/Sales/Invoices/InvoiceForm/utils.tsx
+++ b/packages/webapp/src/containers/Sales/Invoices/InvoiceForm/utils.tsx
@@ -455,7 +455,7 @@ export const useInvoiceTotal = () => {
return R.compose(
R.when(R.always(isExclusiveTax), R.add(totalTaxAmount)),
R.subtract(R.__, discountAmount),
- R.add(R.__, adjustmentAmount),
+ R.add(adjustmentAmount),
)(subtotal);
};