PayPal PayflowPro RESULT=117 Failed merchant rule check

I am upgrading an online shopping cart for a friend over the holidays. We are moving over to Slatwall and yesterday I was having some issues with the credit card processing using PayflowPro. Whenever I would submit a test card (from the documentation) I would receive the following response.

RESULT=117&PNREF=B11P5DEBFF57&RESPMSG=Failed merchant rule check

I knew my account information was correct so that couldn’t be the issue. I did some digging and found out that a 117 is caused by one or more of the following.

  • An attempt was made to submit a transaction that failed to meet the security settings specified on the PayPal Manager Security Settings page. If the transaction exceeded the Maximum Amount security setting, then no values are returned for AVS or Card Security Code.
  • AVS validation failed. The AVS return value should appear in the RESPMSG.
  • Card Security Code validation failed. The Card Security Code return value should appear in the RESPMSG

Based on the fact that I was not getting back an AVS or CVV value in the response message I figured It had to do with my security settings. I did a little more digging through the documentation and found this.

IMPORTANT:The default security setting for Payflow Pro accounts is Allow non-referenced credits = No, so sending the ORIGID is the preferred method for performing Credit transactions. Using the ACCT, EXPDATE, or AMT parameters for such accounts leads to RESULT value 117 (failed the security check).

After I found that I went and updated my security settings and was now able to submit my test transactions.

Categories: ColdFusion,Web Development

About The Author

My name is Dan Vega and I am a Software Developer based out of Cleveland OH. I love to play with new technologies and write about my experiences here. When I am not busy being a full time geek I love to lift heavy weights and hang out with friends and family. If you have any questions please don't hesitate to contact me.

Follow me on:
  • Mark Fuqua

    I have been watching Slatwall from the sidelines since it was first mentioned a few years ago…I have a couple curiosity questions if you don’t mind too much…

    Moving to Slatwall from? How much of Slatwall is ‘out of the box’ and how much is ‘roll your own’? Are you using Slatwall by itself, or as a ‘plugin’ to a larger app?

  • Dan Vega

    The one thing I really love about Slatwall is that you aren’t forced into one solution. If you don’t need a CMS you can roll the standalone version. In my case I went with Mura because it was what I knew at the time. There is also a plugin for ContentBox which I want to checkout because I love that for a CMS Platform. It is full featured though with some great plugins for processing like Payflow,Authorize and Stripe.

    My only negatives to say about the product is that it isn’t the easiest thing to learn. Trying to dig through some of the code or understand how a certain feature works with limited documentation can be frustrating at times. Luckily the guys over there are extremely helpful if you reach out to them via the Google Group.

  • spoon

    Stumbled upon your blog. We had a user submit a an order that was larger than the “Maximum amount per transaction”. Your blog helped me identify this setting, and I have since fixed it. My question is – how can I charge this customer without much interaction with them? I have already had them agree to go through with the order.

    • Dan Vega

      Thanks for the kind words Spoon… I don’t have one sitting in front of me but can’t you create a new transaction through PayPal’s terminal?

      • spoon

        Looks like I might be able to click the “Create reference transaction” button in the canceled transaction detail to create a new sale transaction within paypal. Then I can copy the order (I am using magento) and mark the invoice as paid/captured offline. Thanks for your blog post and fast response to my comment on it a year and a half later.

        • Dan Vega

          No problem at all. Hope you figure it out :)