Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Browser Language Preference Breaks NMI Gateway on Event Registration #5461

Closed
1 task done
billdeitrick opened this issue May 31, 2023 · 2 comments
Closed
1 task done
Labels
Fixed in v15.3 Fixed in v16.1 Status: Confirmed It's clear what the subject of the issue is about, and what the resolution should be. Topic: Event Registration Related to Rock Event Registration.

Comments

@billdeitrick
Copy link

billdeitrick commented May 31, 2023

Please go through all the tasks below

  • Check this box only after you have successfully completed both the above tasks

Please provide a brief description of the problem. Please do not forget to attach the relevant screenshots from your side.

When a user's browser language preference (Accept-Language header) is set to a language that uses a comma decimal separator instead of the period as is standard for the en-us locale, the NMI gateway fails upon payment submission with an error when attempting to register for an event:Invalid Data Type amount must be a number REFID:##########It looks like the NMI gateway is sending the localized currency value through, which is does not seem to be accepted by NMI.This appears to affect only the Webforms Registration Entry block, not Obsidian.Snag!UNITO-UNDERSCORE!70a5c4cSnag!UNITO-UNDERSCORE!709113e## Expected Behavior
The payment gateway would appropriately format the amount field for submission to NMI regardless of the Accept-Language/Localization settings in the user's browser.## Actual Behavior
The payment submission fails with the following error message: Invalid Data Type amount must be a number REFID:############ Steps to Reproduce
The following steps were used to reproduce this issue on the Rock Solid Demo site.

  1. Set the web browser's language preference to Russian. Verify it is set by confirming the browser is transmitting an Accept-Language header with Russian as the first option.
  2. Activate the NMI gateway, entering in any string for the required key, username, and password fields.
  3. Edit the Summer Camp registration template, setting the financial gateway to NMI.
  4. Edit the summer camp registration instance, extending the date so that the registration is still active.
  5. Navigate to the Summer Camp registration on the public site.
  6. Step through the registration (using the browser with Russian language preference).
  7. After filling out the fields on the "Review Registration" step, click "Next".
  8. An error message is shown: "An error has occurred while processing your request. Your organization's administrators have been notified of this problem."
  9. An exception is logged: "Invalid Data Type amount must be a number REFID:XXXXXXXXXX"

Snag!UNITO-UNDERSCORE!709720b## Rock Version
15.0## Client Culture Setting
ru-RU

@cabal95 cabal95 added Status: Confirmed It's clear what the subject of the issue is about, and what the resolution should be. Topic: Event Registration Related to Rock Event Registration. Fixed in v16.1 Fixed in v15.3 labels Oct 2, 2023
@cabal95
Copy link
Member

cabal95 commented Oct 2, 2023

@billdeitrick This should be fixed in Rock 15.3 and 16.1 (and later). I was able to replicate the problem by changing the culture setting in my browser and verified the change fixed that scenario. Since web locales are a tricky thing, if this is still a problem after upgrading to 15.3 or 16.1 please re-open this issue.

@cabal95 cabal95 closed this as completed in 6b766fa Oct 2, 2023
@billdeitrick
Copy link
Author

@cabal95 Great--thank you! Will re-open if this crops up again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Fixed in v15.3 Fixed in v16.1 Status: Confirmed It's clear what the subject of the issue is about, and what the resolution should be. Topic: Event Registration Related to Rock Event Registration.
Projects
None yet
Development

No branches or pull requests

2 participants