PayPal will give you an ID for each credit card you create e.g. CARD-5BT058015C739554AKE2GCEI:
CreditCard creditCard = CreditCard.get(apiContext,
"CARD-5BT058015C739554AKE2GCEI");
Is it safe to send this ID to the client?
It's safe as PayPal tokenization service complies with EMV standard for securing transactions.
The vault-and-pay card-ID (token) can be only used thru PayPal OAuth authentication on your REST APP to
Exchange for card details with PayPal REST Vault service.
Be set as a payment funding source (credit_card_token object) on payment API, within the same REST application where it gets vaulted
While the tokenized ID is unreadable/meaningless for a customer, you may optionally display the user-friendly infor : card type mark (VISA, MC, AMEX, etc) and the last 4-digit card number in your customer's profile
Related
We are studying the feasibility of using Braintree as a payment gateway for one of our client.
One of our requirement is to create a persistent customer with specific payment method/s (paypal, credit/debit etc) using
Braintree Java API.
This registered customer account will then be debited and amount transferred to the client's account as and when need arises.
We have following queries.
Is there any constraint/limitation as to the country to which the customer can belong to? For example, can we create a
customer in Braintree who is a resident of India or China? Can Braintree transfer amount from a customer's account in India
to client/merchant's account in USA and vice versa?
In Braintree sandbox account we can create a new customer with credit card as a payment method. How can we
create a customer with Paypal as a payment method in sandbox?
I have gone through the Braintree Customer.create() Java API. Using Customer.create() API we can create a new customer
with credit card details. But how can we create a new customer with Paypal details using API call? Where can we provide customer's
Paypal account details while calling Customer.create()?
Once customer is created and payment method details verified by customer can subsequent amount transfers from customer to
client/merchant's account happen without customer have to authorize each transaction?
Thanks.
I try to answer your questions but I'm not Braintree ninja.
I think yes but there would be some charges on top of normal fees (known as currency conversion charges).
You can't create paypal as payment method in sandbox (I don't know the reason) but you can in production account.
When users choose Paypal as payment, after successful authentication a token is returned that you can save in database for future transactions (without authentication).
I didn't get your last question, let me answer what I understood(I guess you mean authentication again or providing details again). If customer agrees to have payment method vaulted then no, they won't have to authorize transactions in future as long as they don't cancel their payment method.
Update: Forgot to answer the first part of your question No. 1, as per their FAQs Braintree accepts payments from almost everywhere.
Is it possible to add a customer's credit card information to their Paypal Wallet? I've looked into the REST API, but the information is stored in a vault specific to a merchant. I want to save the card information to the customer's wallet for future use. Does Paypal have a wallet api?
As a general rule, no. The buyer has to log in to their PayPal account to add the card.
(There is the AddPaymentCard API, but this is typically reserved for banks that are setting up PayPal accounts for their users and are adding a credit card/debit card, that they issued, to the new account.)
Is there a way to integrate /vault/credit-card call with PayPal payment buttons? I do not want to work with client credit card information but i can't find a way to redirect the client to paypal only to store his credit card information and for me to get his id on paypal to charge him than needed
You could use the PayPal/Payflow hosted checkout pages and process a 1.00 authorization. Then store the transaction id on your system. Then when you want to charge the buyer, you would just use the reference transaction API call to charge them. You only need to pass over the amount you want to charge along with the previous successful transaction id, and PayPal will use the same credit card information that was used in the last transaction.
I'm working on a e-commerce website with PayPal direct payment. Our customers are supposed to enter their credit card information in the page that hosted by PayPal, so that our server will NEVER touch the cardholder data.
Our problem is that we want to provide the convenience so that the returning customer don't have to enter credit card information every time, and we don't want to store or even touch the cardholder data.
Instead, we want to store this sensitive data in PayPal so that next time we can just provide something like a CustomerID to ask PayPal access the credit card information to complete the purchase.
Is that possible to do with PayPal or other service provider?
PS. We also tried Intuit Payment Wallet. It can store the cardholder data but it need us to transmit these data to their server to create a "wallet".
If it's PayPal you can do it either through Reference Transaction, or Recurring Billing. You also have PayPal's Adaptive Payments pre-approvals, although these require that the buyer have a paypal account.
For true credit card storage, where you only keep a token, you have to use a service like these guys:
https://www.braintreepayments.com/
How can I get a sellers PayPal email account after I've successfully purchased an item on eBay?
I'm writing an application which makes a purchase on eBay via its API. When it successfully purchases, I receive a Transaction ID from eBay.
I now want to use the PayPal API to pay for this item, and require the sellers email address. I understand that their API has methods like GetTransactionDetails, but I'm making the request as a buyer, and also only have the eBay transaction ID.
Where can I get the seller's PayPal email address?
Thanks!
There is no API based approach to remitting purchases on eBay via PayPal.
After testing many different options and wading through the vast mess of eBay API "documentation" and raw responses, it's evident that the PayPal email address of the seller is NOT available unless you are the seller.
Trying to access this field as the buyer, despite being part of the transaction, will simply return "Invalid Data" in this field.
I'm assuming you're using the PlaceOffer call (from the Trading API) to purchase the item.
You can get the seller's email address using the GetItemTransactions API, and there would be a strong liklihood that that email address would be the same one associated with their PayPal account, but it's not guaranteed to be the same. For example, for large-volume sellers, they might have "sales#mystore.com" for their eBay contact but "payments#mystore.com" for their PayPal one.