(I know that three years have passed since this question was asked, but since another user pointed to this question, I will answer anyway.)
In short, if you send the sender to the PayPal website and approve the payment, payment will be completed immediately, regardless of whether you set actionType
.
The purpose of setting actionType=CREATE
is to give you some time to make additional API calls against the keyword before the payment is completed. This is primarily useful when you make implicit payments - for example, those payments in which the sender and the calling API are the same party (and you set sender.useCredentials=true
, specify your email address in senderEmail
or set a secure identifier agent in sender.accountId
) or those payments in which you use the prior approval that the sender previously approved. Since these types of payments usually complete immediately (if you set actionType=PAY
), setting actionType=CREATE
gives you a little time to make other API calls against payment (e.g. SetPaymentOptions) before the payment is completed.
If you make an explicit payment (when the sender must go to the PayPal website to approve the payment), however, you will simply make these additional calls before sending the user to PayPal.
source share