Skip to content

[Due for payment 2026-01-13] [Payment due] [Splits in NewDot] Add 'Split by percentage' to the split expense table for new splits #72228

@garrettmknight

Description

@garrettmknight

Follow up to Expense Splitting in NewDot

[Figma]
[Predesign]

Feature Description

Implement a ‘Split by percentage’ flow that does the following:

  1. Creates two split options at the top of the split table: Amount (this is the existing split method) and Percentage (this is the new one)
  2. When the user taps 'Percentage' we'll change the view of the split table like so"
  • The input on individual splits will be a percentage between 0 and 100. We'll accept whole percentage values. i.e. 5%, not 5.5%
  • The initial percentage values will be the split amount / the original amount.
  • When users change a percentage on a split, we'll update the amount of the split to the original transaction amount X the percentage.

Important Notes:

  • We'll maintain the logic and copy for our current warnings/errors on saving splits where the sum of the splits differs from the original transaction amounts.
  • We're beginning with Amount and Percentage as modes, but we'll add Date later.
Image

Manual Test Steps

Enabling Percentage Mode:

  1. Submitter creates an expense for $200.
  2. Submitter taps 'Split' from the 'More' menu. Two even splits are created in the Split table, each for $100.
  3. Submitter taps 'Add Split'. The new split is set to $0.
  4. Submitter taps 'Split by percentage'
  5. Verify the Split by percentage page shows, with existing amounts and resulting percentages:
  • Split 1: $100 / 50%
  • Split 2: $100 / 50%
  • Split 3: $0 / 0%

Changing Percentages:

  1. After step 6 above, change the percentage of Split 3 to 25%
  • Verify that the amount for Split 3 is $50
  • Verify that an error shows noting that the total is $50 more than the original amount
  1. Change the percentage of Split 1 to 25%
  • Verify that the amount for Split 1 is $50
  • Verify the 'over' error from the previous step is removed.
  1. Save
  • Verify the splits are correctly created for the amounts listed in the split table

Automated Tests

Issue OwnerCurrent Issue Owner: @garrettmknight

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionNewFeatureSomething to build that is a new item.WeeklyKSv2

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions