2
votes

I am using the PayPal REST API and would like to create a transaction that includes a combination of recurring and one-time payments in a single transaction.

According to the documentation for the NVP integration, it seems such a transaction is possible. However, I'm not sure how to accomplish the same using the REST API. I have searched the REST API documentation as well as the .NET SDK examples and cannot find an example of a transaction that uses a mix of recurring and one-time payments.

Our use case: We process transactions for downloadable software - most of the products are one-time purchases, but some of the products (such as anti-virus products) have a recurring billing component associated with them. As such, we need to process a single transaction where one of the items is a regular purchase, and the other is a part of a recurring plan. We plan to process these transactions using the "PayPal" payment method (i.e. not direct credit card). Specifically, we'll be using Express Checkout.

Any guidance would be much appreciated. Thank you!

1
Just to get some clarity on this one, can you provide a scenario in which this would be used? For instance, are you trying to setup a subscription model for a user that charges them an initial setup fee and sets up the recurring payment at the same time, but that fee is only on the initial transaction? Also, are you planning on processing the subscription via PayPal or a credit card transaction?Jonathan LeBlanc
Certainly, I've updated the question with our use case. It seems I can accomplish this through NVP / SOAP but don't see a way to do this via REST.ski_junkie

1 Answers

1
votes

Based on what you're doing about, here's what I think your best course of action might be:

When you have a user checking out that may have some multi-month subscriptions, and some single time subscriptions, you set up a new billing plan with each item to be purchased. For the subscriptions, you set up an entry that is set to multiple months, and for a single payment you set a single month payment (see https://developer.paypal.com/docs/integration/direct/create-billing-plan/ for an example of multiple entries).

Next, you need to execute that plan for the user via a billing agreement (https://developer.paypal.com/docs/integration/direct/create-billing-agreement/). Within the billing agreement you can set the start date to execute immediately, which should complete the checkout process for both billing orders right then.

Let me know if that works out for your scenario.