c# paypal cancel subscription server side - paypal

My website users need to buy plans with paypal subscription.
A use can switch between plans. In order for a user not to have duplicate subscriptions I need to be able to delete the old ones once a user is sign up for a new subscription.

If you're using PayPal Standard Subscriptions you won't be able to do this, unfortunately.
You will need to switch to the Express Checkout API with Recurring Payments. Then you can use the APIs to manage the profiles with these calls:
GetRecurringPaymentsProfileDetails
ManageRecurringPaymentsProfileStatus
UpdateRecurringPaymentsProfile

Related

Reference Transactions without Paypal Account

For a new project I want to get rid of paypal subscriptions as users tend to subscribe multiple times and then dispute all payments.
Instead I want to use reference transactions to bill the clients when necessary.
Now with the regular checkout or subscriptions users didn't have to have a Paypal account to purchase. They could just enter credit card details and start the subscriptions.
With reference transactions I can only see a paypal login page where a user gives permission for the reference transaction.
Is there a way to enable reference transactions for users without a Paypal account that just have a credit card? Or is there something similar that could achieve this?
In order to use Reference Transactions PayPal Accounts are required and not allowed for Guest Checkout option (no work around).
The alternative to this would be to upgrade using Payflow APIs where a PNREF is used in this scenario on future payments. Or BrainTree's future payments using vault. These options are direct Credit Card processing only.
Recap - PayPal accounts needed for PayPal Reference Transactions
Payments Pro has a reference transaction system. Typically you run an authorization for $1 and then void it. Then you can run a reference transaction on the previous transaction ID.
Payments Pro is a subscription service.

PayPal check stop subscription

Is there a way to stop paypal subscription via HTML form?
(E.g. there is a form on my website that is submit somewhere on paypal.com)
I do not use API, but I use notify (IPN) URL and have subscription ID I want to cancel.
PayPal Standard Subscriptions do not have any API available to cancel profiles. You would need to be using the Recurring Payments API in order to have that ability.

Can I implement Paypal with a combination of website payment standards & Paypal API?

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.

Is it possible to unsubscribe an user via the Paypal Adaptive payment API?

My users subscribe to my project using the paypal button "Subscribe", and then I manage the monthly payments via the IPN, but if the user delete his account, I'd like to unsubscribe him automatically, without asking him to go to Paypal to cancel his subscription.
Is it possible to use the Paypal Adaptive Payment API to tell Paypal to unsubscribe this user ?
Bonus question : is it possible to use the Paypal Adaptive Payment API to know the status of the subscription, and eventually also to modify it (lower the amount for example) ?
You wouldn't use the Adaptive Payments API to unsubscribe a user from a subscription. If the buyer signed up for a subscription, you could ManageRecurringPaymentsProfileStatus API to cancel the profile. As for the status, you would not be able to use the "GetRecurringPaymentsProfileDetails" API call to get the status for subscriptions. This would only be supported for recurring payments, not subscriptions. However, you could use IPN which would send you the details when the profile gets created, when a new transaction is processed, and etc. Then you could just query your own database for the details.

Which Paypal API for preapproved payments?

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.