32974

PayPal Rest API Capture AUTHORIZATION_AMOUNT_LIMIT_EXCEEDED

Question:

For Express checkout, when I create a payment with intent=authorize. after calculate shipping and tax, if the shipping + tax is greater than 15% of the original payment amount I got the error "AUTHORIZATION_AMOUNT_LIMIT_EXCEEDED". It is very common that shipping + tax exceeds 15% of the original total especially for smaller and heavy items. What will be the way to go around it? thanks,

Additional info: when I look at classic PayPal express checkout's first step, It's not required to set any amount to log in to PayPal in order to retrieve shipping address, how do we do this with REST API?

<a href="https://developer.paypal.com/docs/classic/express-checkout/integration-guide/ECGettingStarted/#id084RM05055Z" rel="nofollow">https://developer.paypal.com/docs/classic/express-checkout/integration-guide/ECGettingStarted/#id084RM05055Z</a>

Answer1:

That you may consider the <a href="https://developer.paypal.com/docs/classic/express-checkout/integration-guide/ECInstantUpdateAPI/" rel="nofollow">PayPal InstantUpdate API</a>, which allows you to update the tax & shipping calculation on the PayPal order review page (with AJAX).

Or alternatively, the common practice is to make the calculation before your payment request API call, on your website checkout flow (when customer fills in the shipping address and select shipping method), submit the precise amount to PayPal and then make the redirection.

Answer2:

You are not getting this error from DoEc, but later when you are later calling DoCapture on the authorization you generated in DoEC, right?

If so, then you are up against one of PayPal's protections for its consumers, which is that they don't allow merchants to get agreement for one price but then charge the buyer a much higher price. This is to avoid bad buyer experiences.

You basically have three options:

1) You can call PayPal CS and ask them to give you special permission to exceed the 115% limit. If you have enough history & volume with PayPal without generating disputes from users, then they may give you this permission. But this permission is usually only extended to large/trusted brands.

2) You can add an estimated tax, shipping and handling charge to the auth in Express Checkout. You would still tell the user that precise tax and shipping will be calculated when the item is shipped and their exact cost will vary. But your estimated charge should get you within 115% of the total. (Note: you usually should be able to get tax precisely at time of sale....)

3) You can decide on a fixed shipping and handling charge that allows you to cover your costs in aggregate and charge that in the EC flow. Yes, on one item that is larger/heavier than you expect you may loose $5, but on another that is smaller & lighter you will come out $5 ahead. This is what most people do.

Recommend

  • data.table replicate rows after join?
  • How do I compile a C/C++ program through windows command prompt?
  • Graceful pod termination
  • How to apply a custom handlers to only specific folder
  • iOS Cordova first plugin - plugin.xml to inject a feature
  • Can my PDF ping my server when it is opened?
  • How can Delete be both a DDL and a DML statement
  • Display validation errors inside
  • Is there a way to save the selected text and highlight it again once the page is refreshed?
  • C# fibonacci function returning errors
  • How to calculate the camera position from Vuforia GL matrix?
  • Clarification on min distance on LocationManager.requestLocationUpdates method, min Distance paramet
  • Roxygen error “Skipping invalid path”
  • Button text different than value submitted in query string
  • How solve “Qt: Untested Windows version 10.0 detected!”
  • why xml file does not aligned properly after append the string in beginning and end of the file usin
  • Assign variable to the value in HTML
  • How to suppress a dialog
  • Transactional Create with Validation in ServiceStack Redis Client
  • How to Cache Real-time Data?
  • How to clear text inside text field when radio button is select
  • Scrapy recursive link crawler
  • Body moving without any force applied? (Box2d)
  • If I include Java 8 in my Android app does that affect which devices it will work on?
  • How can I send an e-mail from a vbs script
  • Date difference with leap year
  • Is possible to count alias result on mysql
  • Can I have the cursor start on a particular column by default in jqgrid's edit mode?
  • what is the difference between the asp.net mvc application and asp.net web application
  • Hazelcast - OperationTimeoutException
  • Rearranging Cells in UITableView Bug & Saving Changes
  • Invalid access key error using credentials redeemed from an amazon open id token
  • Confusion with PayPal's monthly billing cycle
  • Circular dependency while pushing http interceptor
  • retrieve vertices with no linked edge in arangodb
  • using conditional logic : check if record exists; if it does, update it, if not, create it
  • Linker errors when using intrinsic function via function pointer
  • Understanding cpu registers
  • FormattedException instead of throw new Exception(string.Format(…)) in .NET
  • Add sale price programmatically to product variations