TEST fine LIVE Form transaction error status Malformed 3045 currency field is missing - currency

I am integrating Sagepay form on a website. I have succssfully completed transactions in test mode but when I make it live I get the following error
Form transaction error status Malformed 3045 currency field is missing

The problem is not the Currency field, Sage Pay messages can be missleading at some points.
Please triple check that your encryption key is correct, I think you need a new one for LIVE mode, different than the one you use in TEST mode.
They throw that "currency" error because when the gateway tries to decrypt the message they cant and the first field that they look for is the Currency field.
Kind Regards,
Pablo

Related

Preventing from manipulation of disabled fields using developer tool

ASP.NET MVC and Angular based enterprise web application is hosted for external users access. We encountered a scenario like an user can manipulate the values shown in the disabled fields and submit so using the browser developer tool. e.g. (1) Input field of Vehicle Name, description etc. is disabled in the edit mode, but user can set the read-only field property to editable using dev tool and manipulate the actual value to something else.
similarly, e.g. (2) Customer details are fetched by ID from Cust db and shown on the screen. The customer details are expected to be saved in another db with a few more inputted details, but user edits the read-only customer fields using dev tool and submits.
As a solution, introducing a server side validation between retrieved and sent back values on every submission does not seem to be a right approach.
So, how to protect the read-only or static values from manipulating with browser or other dev tools?
As a solution, introducing a server side validation between retrieved and sent back values on every submission does not seem to be a right approach.
Contrary to what you appear to believe, that is the solution.
You cannot prevent the user from crafting their own HTTP request. You cannot prevent the user from hitting F12 and sending you garbage. It is up to you to validate whether the user is allowed to update the data they send you, and whether they are allowed to read the data they request.
Client-side validation is being nice for your users; server-side validation is an absolute necessity.

No response after filling in the Email Markup registration

Sent registration Gmail Email markUp (adding schemas to the templates of letters)
I sent a letter with a markup to
schema.whitelisting+sample#gmail.com
and passed the test
https://www.google.com/webmasters/markup-tester/u/0/?hl=ru
Foldings did not come, and more than a week there is no answer.
Tell me, what is the approximate length of the answer, should the pile come and should I write again?
As per my experience in requesting to whitelist a specific email address, usually, it takes about 2 weeks in total to complete the process. Just make sure that the following guidelines in this documentation was met to avoid rejection.
will everyone get a reply if application was rejected or approved?

How to add Account Reference in QuickBooks while adding bills from c# application

I am using Quickbooks Desktop 18.0 and I am syncing data between my c# application and QuickBooks via Web Connector.
I have one task where I have to push bills and I have predefined account reference for each expenses row in Bill under Vendors -> Bills.
I am unable to push the Bills because, I am getting error like this
0x80040400: QuickBooks found an error when parsing the provided XML
text stream
The error caused due to middot separator in Account reference. Account reference name is
EXPENDITURE:Marketing:858700 ยท Advertising
Look between 858700 and Advertising. If I remove the <AccountRef> tag from the BillAddRq XML, Bill is pushed and If I replace the middot with dash then I get error like this
<?xml version="1.0" ?>
<QBXML>
<QBXMLMsgsRs>
<BillAddRs statusCode="3140" statusSeverity="Error" statusMessage="There is an invalid reference to QuickBooks Account "EXPENDITURE:Marketing:858700 - Advertising" in the Bill. QuickBooks error message: Invalid argument. The specified record does not exist in the list." />
</QBXMLMsgsRs>
</QBXML>
I need to push Bill along with Account reference.
What should I do?
Please help. Thanks in advance.
A couple of things here --
You can't just change an account name randomly, and expect it to work. So don't just swap out random characters (e.g. the bullet point) for a -dash- and expect it to work.
Whoever gave you that account name gave you the wrong data. The account name is actually: EXPENDITURE:Marketing:Advertising. They copy/pasted something off of a report in QuickBooks and gave you the Account Number and the Account Name fields smushed together (by that bullet dot). The actual account name alone does not include the bullet dot.
In the future, if you do an AccountQuery against QuickBooks, you can look at the FullName that you get back and see the actual account names you should be using, vs. relying on the data someone is sending you/you're seeing in the UI that's formatted with the account number plus the account name together.

AWS lex slots are behaving very strange

I'm trying to create a bot in Lex and I'm using the default one provided by the platform(BookTrip). Here when I enter some random text when I as prompted for city, it is taking anything, though it is a valid city or not.
please let me know if I'm going wrong somewhere and how can I fix this.
Thanks
The built-in slot types are not limited to their lists.
So it is good practice to validate the slot values yourself in Lambda.
The built-in slots have a big room to take on values that might not be valid, this happens for cities, names, emails, etc. To avoid this is to fill out the Corresponding utterances for each slot in the console.
An advanced way would be to attach a Lambda that gets called with the intent, then verify each slot value received to verify it matches your validation

Forcing users to type in only numbers in a field (RoR)

There is similar question like this for ASP.net, but I wanted to know if there is a 'relatively' easy way to do this on RoR.
I have a field for "Price" where I want the user to only type in numbers. This means that when the user tries to type in anything else, my web app shouldn't let them (nothing should happen).
If this isn't possible, I guess I can just validate my data after the user has submitted the "Submit" button and then flash a message that says "'Price' must be a number."
Thank you for your time,
JHS
This requires a javascript solution (since you want the check to occur client-side) so it will depend on which javascript framework you are using. If you are using jQuery this is a nice one that will do exactly what you need: Numeric
as everyone already mentioned this requires a javascript solution. you can use the following regex to test that only numbers are given
/^[0-9]+$/
tie that to an onKeyUp event handler and you can validate the input client side

Resources