I grant you this is much easier to see than to explain, and snapshots here won't help much and I don't want to snapshot my record anyway in a forum, so bear with me...
Effectively... As there had been discussions on times coming through in different timezones depending on where you are (the CRM record live as a user shows in their local timezone, the back end functions show CRM variables as the function author's local time zone I believe (my local and company are the same, so that point is fuzzy in my memory), and the current time comes through as our local DC (a different timezone). I wanted to test what the kiosks send you for time and, from what I can tell, those values come through in GMT.
I made a dummy kiosk to test this by having the kiosk screen have a datetime field with a merge value for the CRM record you're on. When you run the kiosk, the merged datetime in the kiosk screen there reflects the user's logged in local timezone as one would expect.
When you press the button, however, on the back end, it takes that screen value (the user can change it, but I did not for this test), and adjusts it as though it were coming in from GMT to EST (my time/the company time, thus what it should be set as to my understanding) and saves the variable.
Theoretically, the value should be the same as it originally was (regardless of timezone), if my understanding of the variables is correct.
What happens is (sort of) correct, but is wrong in the interim (e.g. the reason for this post).
Basically, I am logged in on one normal Chrome browser (local timezone EST, or GMT-4) and my test user is logged in on the same record in an incognito Chrome browser (local timezone GMT-9) so I can see how it works for both users/timezones at once.
My EST user has 9/28/26 3:00pm and the GMT-9 user shows the same variable as 9/28/26 10:00am. Correct.
I start the kiosk button and the kiosk screen values in each show the same value/time for the user's local time. Correct.
I press the button on the EST login and it saves the value as the same time (it highlights it as though it changed, when it was saved to the same value, but whatever, fine...). Correct.
When I do the same thing on the GMT-9 incognito browser, however, the CRM variable highlights a change and, instead of showing 9/28/26 10:00am again, as it should, it changes to 9/28/26 3:00pm, e.g. the EST value instead of its own timezone... If I run the Kiosk again, it still loads as 10am. If I hit the pencil edit on the 3pm field, the edit loads with 3pm and, if I save it, it saves looking like 3pm, however, if I refresh the browser, it's back to 10am.
If I run the kiosk on that user with the different timezone than the function author and it shows the 3pm (incorrect) change again, it stays that way until I hit refresh on the browser and then it shows as 10am magically again.
Basically, both eventually get to the correct value, but the incognito browser in a different timezone than the company and author of the function is looking quite weird until they refresh and I don't know if there's an interim way where that wrong value would ever be used on the back end, but it's disconcerting at least.
It's possible this is a user permission issue, as I originally had my incognito user (who owns the record in this test) as view only on the record (I wanted the kiosk to be able to make changes that were structured in the code, just not changing values willy nilly, so to speak). I changed the permissions to give my incognito user the create and edit abilities, however, and it made no difference (apart from enabling the creep pencil edit and save as that wrong 3pm that also didn't stick). I've since restored the permissions as I originally had...
Might I somehow be missing something on my end causing this or is it a straight rendering issue?
Thanks in advance, and happy to connect with ZOHO offline to demonstrate and such, if need be.