A browser-based tool for Benetech employees to calculate food per diem reimbursements and generate expense summaries for submission in Concur.
Live tool: https://benetech.github.io/PerDiem/
- US rates — fetched live from the GSA Per Diem API by fiscal year and location
- International rates — 228 countries sourced from the US State Dept Per Diem database
- Daily meal grid — one row per travel day with checkboxes to mark meals that were provided
- Reimbursement summary — calculates daily totals accounting for provided meals, with a grand total
- Export to image — saves the summary as a PNG for attaching to Concur expense items
- Concur next steps — step-by-step guidance for submitting the expense report after saving the image
- Accessible — WCAG 2.2 AA compliant, screen reader tested, keyboard navigable, dark mode supported
- Enter your Name, Conference, and Project Code
- Select your Begin and Return Travel Dates
- Choose your Country, State (US only), and City
- Click Submit to look up the per diem rates
- In the Daily Meal Grid, check any meals that were provided (e.g. conference breakfast)
- Click Calculate to generate the Reimbursement Summary
- Click Export Summary as Image to save a PNG receipt
- Follow the Next Steps to create the expense report in Concur
| File | Description |
|---|---|
PerDiem.html |
The complete self-contained application (HTML + CSS + JavaScript) |
index.html |
Redirect to PerDiem.html |
International per diem rates are embedded in PerDiem.html and sourced from the US State Department. They typically update January 1 and July 1 each year. The tool displays a warning when the data may be out of date.
To refresh: open this project in Claude Code and say:
"Please refresh the international per diem rates in PerDiem.html"
Claude will re-scrape the State Dept website and update the embedded data automatically.
US rates are fetched live from the GSA Per Diem API on every search — no manual updates needed.
Versions are tracked automatically in the APP_VERSION constant inside PerDiem.html and displayed in the app header.
Charles LaPierre — Benetech
Built with Claude Code