Skip to content

[Payment Due 08/23][$250] [Track Tax] Add the ability to configure tax rates on distance rates in NewDot #41574

Description

@trjExpensify

Coming from here.
Figma here.

Problem

International customers tracking tax on distance expenses are forced to use OldDot to configure their settings. This leads to them not being suitable to migrate to NewDot. In turn, prevents us from achieving full reunification for all collect workspaces.

Why is this important?

We can't migrate these workspaces otherwise. We're already building the ability to see tax rates applied to distance expenses in NewDot, so we need to ensure that's configurable in the workspace settings as well for complete feature parity.

Solution

1. Add a Track Tax toggle to the Workspace > Distance rates > Settings page

image

  • The toggle should be greyed out and locked if the Taxes feature isn't enabled.
  • If Taxes are enabled the Track Tax toggled it's greyed out by default, but can freely be enabled at that point.
  • If an admin disables Taxes on the workspace, Track tax on Distance rates should get disabled as well.

2. When the Track Tax toggle is enabled, add two push rows for Tax rate and Tax reclaimable on within the RHP page of each individual distance rate in the Distance rates table.

image

  • The two push rows should be hidden when Track Tax is disabled
  • When revealed, the values should be blank by default
  • If an admin configures a rate/reclaimable portion, and then disables Track Tax or Taxes on the workspace, the two rows should be hidden.
  • If an admin configures a rate/reclaimable portion > disables Track Tax > re-enables Track Tax the rate selection/reclaimable portion values should be remembered when revealed again. (Similar to how we don't blow away your categories or tags lists if you toggle Categories / Tags off/on).

3. The Tax rate push row should push to a page that uses the standard SelectList component and contains a list of all the tax rates added to the workspace (this should basically be the same list as seen on an expense).

image

4. The Tax reclaimable on push row should push to a page that uses the BNP to enter the reclaimable portion

image

  • There should be no currency selector on the BNP here though. The currency matches the workspace's reportOutputCurrency.
  • The maximum amount that can be entered is the value of the distance rate. E.g distance rate = £0.30, reclaimable portion maxLimit = £0.30. If an admin enters a value higher than that, we'll show an error message onPress of the Save confirmation button:

image

CC: @Expensify/design

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~012ad19bb3a1a1f8d8
  • Upwork Job ID: 1788904084959670272
  • Last Price Increase: 2024-08-08
  • Automatic offers:
    • nkdengineer | Contributor | 0
Issue OwnerCurrent Issue Owner: @trjExpensify

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionExternalAdded to denote the issue can be worked on by a contributorNewFeatureSomething to build that is a new item.WeeklyKSv2

Type

No type

Fields

No fields configured for issues without a type.

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions