How-To: Migrate to the new Per Diem feature
The new and upgraded Per Diem feature was announced in February 2020, but all existing users of Per Diem in Expensify will still be accessing the previous iteration of Per Diem in Expensify.
There are some notable differences between the two which you can look out for if you're unsure about which version of Expensify Per Diem you're using, and if you're a Policy Admin - which you have your policy configured for.
If you don't have the option to add a Destination to your rates, you're still using the old version. You can see the Destination column, upon which all Subrates are now dependent visible in the policy editor here:
Or you can view it as a Per Diem claimant in the new Per Diem expense creation view:
I don't see that? How do I get it?
You'll be seeing something like the below screenshot, where you're configuring Per Diem with rudimentary single rates by Per Diem Name, Rate and Currency. To gain access to the additional Destinations and Date/Time tracking etc, simply toggle your Per Diem OFF and then ON again from Settings > Policies > Group > [Policy Name] > Per Diem. You'll see the brand new Per Diem rates with every Destination added as "International".
Note: You cannot return to the old version of Per Diem after this change.
Making your rates match...
Most of the time, this will really just be a case of splitting that old Per Diem Name to create a Destination and SubRate. So lets start by Exporting your rates to a CSV file:
Once you have your rates exported, refresh the policy page and head to your spreadsheet software. Here, we'll want to split out your Per Diem Name into the newly required Destination and Subrates.
You can do this easily in your spreadsheet software of choice, but here we'll split the Per Diem Name easily next to the rateID's which exported with your CSV file in Google Sheets, in two newly inserted columns right after the old Name header:
Obviously, the above will entirely depend on what your existing delimiter is. Here, we've used " - ", but this could just as easily be ", " or "; " or ": ". We've also used the formula:
=ARRAYFORMULA(IFERROR(SPLIT(C2:C," - ",FALSE,TRUE),""))to output the
SPLIT here, but you could just as easily do this in each column with the
=ARRAYFORMULA(IFERROR(LEFT(C2:C,search(" - ",C2:C)),""))
=ARRAYFORMULA(IFERROR(MID(C2:C,search(" - ",C2:C)+3,1000),""))
ARRAYFORMULA simply saves time from having to drag down a formula in this instance, so it's not entirely necessary to include if you don't want to.
Once you've managed to neatly split these, make sure you've saved the text in those columns as values and delete the old Per Diem Names from column B and C.
Next, we'll want to clear out the existing rates. Don't forget this bit, otherwise you'll probably end up with a lot of duplicates that you don't need!
Now, let's upload our new rates now, by clicking Import From Spreadsheet:
Assign each column the correct header (don't worry, the first line with your headers won't import as its own Destination+Rate) and click Import at the bottom.
Voilà! You're done. You're ready to go with Per Diem once again. Users can begin submitting their new Per Diem claims and you can continue to approve the old ones on the same policy. If you need to reject any, they'll have to be recreated as new Per Diem claims.