When I was in the military, temporary duty (TDY) assignments were commonplace travel, and my first corporate gig was 2-weeks every month on travel. That has slowed down quite a bit as my career has mutated, but I still find myself on various assignments two or three times a year. Because most (not all) of my military assignments were to other bases, travel allowance and payout was pretty straight-forward. Go to the travel office, present orders, get cash. While at new base, go to the travel office, present orders, get cash. My first corporate gig was a combination of spreadsheets and fax machines. Nowadays we have online web-based reporting and automatically-linked credit card purchases. Import the credit card charge and it is payed directly. Easy as pie. In theory.
Because I checked in for a week's stay, they charged my credit card accordingly. When I left a day early, they refunded the unused portion. Our super-glamorous accounting software won't let me submit it because the receipt differs from the actual stay, and I cannot import the refund because that number is (obviously) not "greater than 0." Being smarter than this software I simply checked "include taxes with room rate" and averaged the total. However, with three decimal points it was either under, or over by $.01 - which is a flagged exception disallowing submission.
To further complicate matters, two days were less expensive than the remaining days to (presumably) a seasonal rate change and a special "weekend rate." So after a 15-minute wait-time phone call to support, they suggested I manually add each day separately - with an attached note as to why - then submit. I'll get the money instead of my credit card, then I can pay it myself.
Its a crazy world when spredsheets and fax machines are more effective.