I am using PayPal Payments Standard to upload contents from a custom shopping cart. i.e. The upload happens with a page redirect which posts the hidden vars to PayPal where the customer completes the transaction. When the transaction finishes, PayPal uses the "IPN" process to notify my the payment has been made.
In this case a reservation is made at the same time. The same as selling a limited stock item. As it wouldn't be good to have multiple PayPal transactions out there contending for the same slot, the reservation is made before the customer gets redirected to PayPal.
Once the Customer is at PayPal they might realize they don't have any money and close the window leading to an unpaid reservation that needs timed out and dropped.
Is there a guaranteed expiration time for the PayPal checkout page after which the reservation can be discarded without a risk of receiving a surprise payment for a deleted transaction? I realize IPN has it's own non-deterministic timing stuff, but without knowing there even is an expiration period, someone might sit on the website for a day and then pay.
Possibly too late to help you, but for the record: I asked PayPal tech support this question, as I couldn't find it in the docs either. They wrote:
Each transaction is associated with a token that expires after 3 hours
if the buyer didn't complete the checkout. This isn't usually
modifiable but can be extended by contacting a Business service
representative ( we don't recommend to extend it for security reasons
however. the token can't be less than 3H in any case)
So it's a MINIMUM of three hours.
Related
Is there a way to programmatically deny (or "unclaim") a direct PayPal payment?
Let's say someone sends ten payments of $1 each to a corporate account. This is already an accounting headache, but if you think you can refund them as they never happened, there's a non-refundable part of a commission. Ten payments will cost you $3 USD or about as much in other currencies no matter what. This is infinitesimal amount business-wise, but related accounting expenses can be ten or even hundred times as much depending on which country a business in.
So best case would be to reject such payments before they even happen.
I read about IPN notifications, but nowhere there's mentioned a possibility to respond to a specific payment event with some sort of refusal. Yet I saw sometimes my own payments made by using standard "Pay Now" buttons to some merchants were tagged as Unclaimed until a manual intervention from the merchant. Therefore there must a be a way to do this.
I am integrating PayPal in my iOS app.
I don't have any idea about what time its take complete the transaction.
Means if a customer has made a purchase then after how much time the certain amount is deducted from customer's account and transferred to mine?
Instant. The money is in your PayPal account before PayPal responds to the API call. (Presuming you request instant payments, that is, instead of just placing an order or auth etc.)
I am using paypal to handle subscriptions to my website and am concerned because PayPal emails users each month when their payment is sent. I realize this is very transparent but I see it as detrimental to my business. Other subscription services I purchase don't send me an email each month reminding me that I am paying them and how to cancel. I'm not trying to hide the fact that I am charging my users but I also don't want paypal activelty reminding them that they are paying money and giving them a link to cancel their accounts.
Does anyone know how to stop automatic emails from being sent from the merchant end or can it only be done by each individual user?
If it can't be done does anyone know of other services I can use to run my subscription billing that give me that control? Thank you!
I currently manage 3,000+ subscriptions via PayPal and have used PayPal for subscriptions for three years. You are correct, this is for transparency. I've never seen the option to disable this, and I doubt PayPal would ever offer it. You'll learn that PayPal is much more interested in catering to buyers than sellers. They keep the buyer happy to the detriment of the seller. For example, PayPal recently reversed 7 months of subscription payments because the buyer called into PayPal and claimed it was unauthorized. We keep plenty of records to prove this isn't true, but PayPal consistently rules in the buyer's favor regardless (we have, yet, in three years to "win" a claim against us). There is very little protection for sellers of digital goods.
Depending on how you decide to run your business, the payment reminders can be used to your advantage. I often receive emails from buyers who claim that they've canceled, yet, we've charged them again, or, they claim they've been charged for months and didn't know it. Thanks to the emails from PayPal, I know, without a doubt, that they were notified each time they were charged, and that if they had actually cancelled, they wouldn't have been charged.
There are many other payment processing services like PayPal that are more "hands-off", but their rates are equal or greater. The only one I've found that's comparable is Payza. Again, there are others, but you have to weigh the benefit of full control (including being the help desk for payment issues), and higher rate, versus PayPal's practices.
I'd like to store a Paypal transaction for a long term authorization (greater than 28 days) to be finally captured when an item ships. (That way, there's no risk as no money has exchanged hands at that point.) It's easy to do with credit cards by indefinitely storing the credit card via the vault and charging it when the time comes, but is there a method to indefinitely store a Paypal account to be charged when the time comes?
Right now, the only way I see that possible is through Preapproval in the Adaptive Payments API, but is there a method to do the same in the RESTful API? If not, is it planned? Is/will it be exactly like the current Preapproval API where it might fail because it uses the exact funding source or will it be more guaranteed? (I understand if a credit card is full, or user deletes their Paypal account, but that should be a very rare event.)
More Info: The full amount is known to the consumer in advance, the general timeframe is known to the consumer in advance but not the exact date, the event or item could be cancelled so authorizations could be voided (therefore no money ever exchanges hands), and the money will go directly to me and not in escrow or chained with any other Paypal account.
yes it is in the works. It would be more like a long term OAuth access-token than a vault id for credit cards - since it's a user's approval to charge their PayPal account in the future. I will try to find the exact release plan but AFAIK it's some time around July time frame.
Hey guys was hoping you could help me out.
I am integrating paypal (for the first time) in a website using PHP. From what I have read, there are two methods for confirming a successful transaction, PDT and IPN.
Now the thing is, the item's being sold can have a limited stock. So if suppose a person reserves an item and is taken to the PAYPAL site for final payment, I have to stop all other people from making a purchase since the last piece of the item will be "reserved".
But suppose the person (who has reserved the final piece of the item) goes to the paypal page, and then simply closes it. Will this result in a "fail" ipn coming to me (so I should un-reserve the item so others can buy)?
If so, how long will it take for the failed IPN to come?
If not, how exactly should I handle this.
And is there any scenario where an IPN does not come?
You could use the Express Checkout API.
With EC, the payment is a two step process. In the first step, you make an API call (SetExpressCheckout) where you set up the transaction, and redirect the buyer to PayPal. Once there, the buyer authorizes the payment, and returns to your site.
At this point no money has changed hands. You need to make a second API call in order to capture the funds (DoExpressCheckout).
You can hold the item for a specific period, and if the buyer abandons the transaction, or is very slow to approve the payment, you can release the item back to the public. If he eventually approves it, and does come back to your site, you would simply skip the second step, and inform the user that his transaction timed out. No money changes hands, no items are double sold.