PayPal Preapproval card checking? - paypal

Does the PayPal Classic API for Adaptive Payments do any checking on credit cards that get preapproved?
My customers preapprove their card and then when I use the preapproval id to charge them I sometimes get the error:
This transaction cannot be processed. Please enter a valid credit card number and type
Is there anyway to ensure the credit card entered is valid when they create the preapproval in order to avoid this error?

I believe you're looking at the error# 580036 - which is generic decline error message. This means that PayPal has tried to contact the issuing bank to collect the funds, but the payment was declined.
To list a couple of reasons:
Usually because there aren't enough funds available
it may be down to security algorithms within the bank.
Certain card issuers will decline certain Merchant Category Codes (e.g. Adult Content) depending on the card being used (e.g. Business Credit Cards)
When you create a Pre-Approval, you're creating a payment agreement with the PayPal Account, but there is no direct contact with the issuing bank at this point. As such, if the Pre-Approval fails at this point, the merchant needs to get in touch with the buyer and either agree on a new form of payment or clear the issues on the account.
The credit card linked to the respective PayPal account is valid nonetheless.

Related

PayPal Credit/Debit Card details to save in Db

I am using PayPal smart buttons for Payment processing, where users can pay using PayPal account or Credit/debit card.
I want to save the last four digits of Credit/Debit card entered by the user for payment in the database.
How can I get that Credit/Debit card number?
Thanks in advance.
You cannot get that information. You also cannot get information on whether or not a credit/debit card was used to pay -- some other payment method may have been used to pay. A customer's billing information is kept private to their PayPal account. All you know is that you received a PayPal payment, and this is by design.

PayPal REST SDK - how to validate credit card accounts

I was able to implement credit card payments on my website. Now my problem is how do I identify if the credit card account is fake or a fraud. What I am doing is I store the credit card info using the vault api then I get those stored accounts for the user to choose what card they will use to purchase my product. However, i can't find a way to add some more validation on how to check if the user is the real user of that credit card account. Right now I can enter any credit card number by just using a card number generator and it directly submits the payment. I can see in my sandbox merchant account that the payment was successful.
So is there a way for me to prevent this?
Thanks to those who could help.
Processing a zero value payment authorization request is the most common way to authenticate the card details are valid without actually taking payment.

Is it possible to create a market place style app with paypal?

I am working on a web application for a client and he wants the payflow to work sorta like this:
Seller makes an offer for an item
Customer purchases the item
The seller sees the item is paid for but won't get the payment
When the item has been marked shipped the payment minus app fee and paypal fees will be sent to seller
App Fee is deposited into the application's paypal account
I have implemented it using paypal's express payment api and do the payouts manually. But this has caused double paypal fee's which are incorrect. My client wants to use adaptive payments but that isn't going to work since they require the seller to be the primary receiver and the merchant service be the secondary but for out desired flow that won't work. What other option do I have?
From the description you provide, the best approach is to use Adaptive Payment Delayed Chained Payment. The buyer will make a payment for the item and the seller will directly receive the amount. You can specify the merchant services to be the secondary receiver but when using the Delayed Chained Payment, primary receiver (seller) will always get the payment first and using the Pay API, secondary receiver (merchant services) will get their portion. If you required the seller to be the last person to receive the money then they (seller) should be the secondary receiver.

Capture Card capabilities in PayPal Payments Pro

Capture Card as I understand it allows a seller to securely accept an online order with credit card name, number and code via a shopping cart. We can subsequently ship the order, add the freight to the invoice and submit the total amount to the credit card for payment. After the payment has been posted the credit card information is wiped from the order.
I was led to believe that I could do this with a PayPal Payments Pro account, so I created one and sent a test invoice through with my own credit card. The amount of the invoice with tax was immediately posted to my PayPal account without the opportunity to add freight.
Can anyone on this forum provide a solution or workaround?
Thanks!!
Are you processing this initially as a sale or an authorization. If you are wanting to use the DoDirectPayment API with Website Payments Pro, you could process a 1.00 authorization to validate the card. Then perform all of the calculations that you are needing to, and then process the payment using the DoReferenceTransaction API call where you send across the full amount you want to charge to the buyers card. You only have to reference the transaction id for the last successful 1.00 auth you did, and PayPal will use the same credit card information. Otherwise you could also process the DoDirectPayment API call with the full amount at the time of checkout, and just use the DoReferenceTransactions API call to charge any additional charges to where not initially charged such as tax and shipping.
Another option would be to use Express Checkout, and process the transaction as an order. This will allow you to make more then one authorization/capture against the order. You can also set a max amount in the Express Checkout API calls.

Does PayPal always return a payer_id?

I understand that when the customer logs into PayPal and uses their PayPal account, PayPal will send us the customer’s payer_id. But what happens if the customer does not log into PayPal and just uses a credit card to process the payment? Does PayPal still supply a payer_id in that case? And is there any way to fake that in the Sandbox? Does PayPal supply test credit card numbers? One for Success, and others for various types of failure?
(This is PayPal Website Payments Standard.)
The answer I received from the PayPal developer forums was:
A payer_id is returned whether the
buyer pays with a PayPal account or
uses their credit card without logging
into an account.
You can generate test card number in
the sandbox by following the steps
below:
First login to your buyer sandbox
account and generate a test credit
card by following the steps below:
Click on Profile
Click on Credit card
Click on Add
Select the card type (currently, the
sandbox will generate test visa card
numbers)
Copy the card here and click on cancel
** Don't add the card to your account**
Now use this test card number, any
expiration date in the future, 000 for
the CVV2 number, any address in a
valid format and any name to test
again.
These test cards will result in a
success. For website payments
standard, to simulate failure with a
test card number, you can enter any
random 16 digits for the card number.
However, with website payments
standard, if a transaction fails, no
response is sent to the merchant.
Thanks.