Skip to content

Commit a67be2f

Browse files
authored
Merge pull request #42945 from allgandalf/issue41285
[Fix]: Inconsistency in merchant requirement during and after invoice creation
2 parents 432c2e7 + ec14413 commit a67be2f

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

src/components/MoneyRequestConfirmationList.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -344,7 +344,7 @@ function MoneyRequestConfirmationList({
344344
}, [isEditingSplitBill, hasSmartScanFailed, transaction, didConfirmSplit]);
345345

346346
const isMerchantEmpty = useMemo(() => !iouMerchant || TransactionUtils.isMerchantMissing(transaction), [transaction, iouMerchant]);
347-
const isMerchantRequired = isPolicyExpenseChat && (!isScanRequest || isEditingSplitBill) && shouldShowMerchant;
347+
const isMerchantRequired = (isPolicyExpenseChat || isTypeInvoice) && (!isScanRequest || isEditingSplitBill) && shouldShowMerchant;
348348
const shouldDisplayMerchantError = isMerchantRequired && (shouldDisplayFieldError || formError === 'iou.error.invalidMerchant') && isMerchantEmpty;
349349

350350
const isCategoryRequired = !!policy?.requiresCategory;

src/pages/iou/request/step/IOURequestStepMerchant.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,11 @@ function IOURequestStepMerchant({
6060

6161
// In the split flow, when editing we use SPLIT_TRANSACTION_DRAFT to save draft value
6262
const isEditingSplitBill = iouType === CONST.IOU.TYPE.SPLIT && isEditing;
63+
const isTypeInvoice = iouType === CONST.IOU.TYPE.INVOICE;
6364
const merchant = ReportUtils.getTransactionDetails(isEditingSplitBill && !isEmptyObject(splitDraftTransaction) ? splitDraftTransaction : transaction)?.merchant;
6465
const isEmptyMerchant = merchant === '' || merchant === CONST.TRANSACTION.PARTIAL_TRANSACTION_MERCHANT;
6566

66-
const isMerchantRequired = ReportUtils.isReportInGroupPolicy(report) || transaction?.participants?.some((participant) => Boolean(participant.isPolicyExpenseChat));
67+
const isMerchantRequired = ReportUtils.isReportInGroupPolicy(report) || isTypeInvoice || transaction?.participants?.some((participant) => Boolean(participant.isPolicyExpenseChat));
6768
const navigateBack = () => {
6869
Navigation.goBack(backTo);
6970
};

0 commit comments

Comments
 (0)