If you want to customise your store when using the payment endpoint, that's fine, you can create a payment experience and then pass the payment_experience_id to the payment endpoint.
But what if you're using the billing agreement endpoint? I notice there's no payment_experience_id field, so how do you customise the store? Can't find anything about this in the API docs.
In the PayPal standard & express payment payment reference docs, e.g.:
https://developer.paypal.com/docs/classic/api/merchant/SetExpressCheckout_API_Operation_NVP/
... see the fields PAGESTYLE for the direct equivalent of the REST payment experience (a group of setting that you set up at an account level and apply to the payment experience as a set), or the fields HRDIMG, PAGEFLOWCOLOR, CARTBORDERCOLOR, LOGOIMG, and BRANDNAME fto override any single piece of the experince for a particular payment.
Related
Is it possible to attach payment methods to customers when PayPal uses the card checkout? I'm asking this because it seems like in order to have the PayPal buttons on the checkout, trying to use PayPal's hosted payment fields seems to not support having external customers with saved cards.
My goal is to have it so I can have the PayPal button along with the PayPal hosted fields for cards, and then if a user does checkout with the hosted fields, it will save their card somehow. This sort of functionality doesn't really seem to be supported by PayPal's API according to the docs unless I'm missing something.
I'm just trying to figure out a way if you can use previous cards in paypal's hosted checkout if that is possible.
Saving payment methods requires a feature variously called reference transactions or vaulting (the v2 vault API, not v1). The feature is not enable by default. The business owner should contact PayPal's general business support (not technical support) or an account manager to inquire about the reference transactions feature and explain the business need.
If approved for the feature, PayPal can then guide you on which API to integrate.
Is it possible to set custom values while creating an agreement using PayPal's Billing Agreements API? I would like these values to be returned by the IPN system.
For example, I want to pass a "purchase id" to the agreement.
using PayPal's Billing Agreements API
Be more specific, there are several classic or REST APIs this could be referring to. Each have their own API reference on https://developer.paypal.com
In general there are two parameters you can use, which will be named slightly differently depending on the API request you are using to actually create the transaction or recurring profile:
invoice or invoice_id :: by default must be unique, never before used for a successful transaction on your account, prevents accidental/duplicate payments
custom or custom_id :: can be anything
Using Paypal Classic API Billing agreement can be created. Agreement Id can be used for future payment using Paypal reference transaction.
Can this same functionality achieved using Paypal REST API? If yes please help me providing reference. I'm aware Billing Plan and Billing agreement can be created using Paypal REST API but without Billing Plan billing agreement can't be created.
Regards,
"Billing agreement" in RESTful APIs is specificly for Recurring Payments, and that might have misled you.
The terms are slightly different between Classic APIs and the RESTful APIs, and Reference Transactions is pretty equivalent to what is called "future payments" in RESTful APIs.
Technical specs are listed HERE, pls be noted that as of now, future payment has to work with mobile integration on top of PayPal MSDK (to obtain user consent and auth code)
Now this feature is available in REST APIs also. But please note this is a vetted product from PayPal. Not every merchant will be approved to use the Pre-Approved payments . Docs are available - But as a limited release
Docs for PayPal Reference transaction API. Also called as pre-approved payments
In my application I have implemented the Paypal website payment standards. But when I use it I can't retrieve details for recurring users. Can I use the API to do the job? Is this a valid or meaningful method?
no you can't retrieve the standard subscription. But you could use the paypal API to make the recurring payments.
http://www.codeproject.com/Answers/526264/How-to-create-recurring-profile-with-express-check#answer1
the above link will provide you the code to create it.
Tip:-
The mentioned code first create a Sales account and then convert it in to the recurring account
With standard subscriptions you can't access those via the API. If you want to work with subscriptions via the API you'll need to use the Recurring Payments platform instead of Payments Standard.
I'm trying to implement PayPal on a completely custom shopping cart and have been unable to figure out which API for recurring payments we need.
We ship a physical product every 2, 3, 4, 6 months so shipment and payment have to both happen together. In addition it must be easy for the user to change their shipment date - or add or remove items to their regular shipments without too much stress (either on their part or mine).
I've generally looked at Paypal's recurring billing as more suited to software based subscriptions and I don't think this is the API I need. I'd like to just bill the customer via a billing agreement and then initiate the shipment.
The way Skype does it seems to be ideal - they establish a billing agreement (shown in my PayPal account under 'My account > Profile > Pay List'
but I cannot seem to find that in the SOAP API document.
What is the API I need to create a billing agreement that I can trigger whenever I want. Can this be done with Express Checkout API ?
The API you are looking for is called reference transactions. This allows you to set up a billing agreement with a customer, get back a token, and then use that token to issue charges in the future. It can be done via the Express Checkout API.
You have to contact PayPal customer support to get this activated for your account before you can use it.