Skip to content
This repository has been archived by the owner on May 5, 2020. It is now read-only.

Send Payment button is misleading for PayPalPaymentIntentAuthorize #174

Closed
ghost opened this issue Aug 8, 2014 · 5 comments
Closed

Send Payment button is misleading for PayPalPaymentIntentAuthorize #174

ghost opened this issue Aug 8, 2014 · 5 comments

Comments

@ghost
Copy link

ghost commented Aug 8, 2014

Our app uses the PayPal iOS SDK for payment authorization, and the final payment capture occurs only after the customer approves the final order details. We create a PayPalPayment with .intent == PayPalPaymentIntentAuthorize. However, in the PayPalPaymentViewController, there is no adjustment for the title of the "Send Payment" button. In this case, the button should reflect that the customer is "authorizing" the payment, but not actually "sending" it.

@dgoldman-pdx
Copy link
Contributor

Thanks for the excellent suggestion, @SinisterCB!

@jasonblood
Copy link

👍 Would also like to see this done its rather confusing when authorising payments because the interface makes it looks like the payment is taking place on the client

@dgoldman-pdx
Copy link
Contributor

@SinisterCB and @jasonblood:

So, apparently the standard PayPal terminology for this sort of button is one of the following; Pay, Pay Now, or Continue.

If we switched from the current Send Payment to simply Pay, do you think that would be less confusing?

@ghost
Copy link
Author

ghost commented Feb 20, 2015

Pay is less confusing than Send Payment because to me it allows for more
ambiguity in the timing (doesn't sound as immediate).

However, for clarity let me describe our use case -- we were trying to
achieve this flow:

  1. create project and details of order
  2. provide shipping information
  3. provide billing information (address, phone, etc.)
  4. provide payment information (credit card, paypal, etc.)
  5. confirm final details of order and place the order

Payment AUTHORIZATION occurs at step 4 - we take your credit card number
directly if you wish to provide it and we authorize it via Stripe. We also
wished to be able to authorize (but not transact) a PayPal transaction at
the customer's choice.

Payment EXECUTION happens after step 5 - in the case of a credit card, we
capture the payment that was previously authorized. In the case of PayPal
we would do the same.

However, because the authorize/execute difference isn't so clear in PayPal,
we ended up skipping the authorization at step 4 - PayPal becomes a choice
selection at step 4 but a no-op until after step 5 at which point we go
ahead and capture the payment by showing the UI.

Therefore, for us Pay is still not the ideal terminology to present to the
customer at step 4. Authorize would be clearer, especially since we may
not end up capturing the payment if the customer decides not to proceed
once he/shes see the full confirmation (price, tax, shipping, discounts,
etc. all reflected together). We do see a small number of credit card
authorizations that do not result in transactions - presumably this would
be the same in the PayPal case.

For our needs, it would be ideal to offer either (a) a list of constants
that relate to possible localized string options for the button, the
constant to be specified as part of the API call, or (b) the option for a
client-specified string offered as a parameter to the API call.

mickeyreiss pushed a commit to braintree/braintree_ios that referenced this issue Mar 9, 2015
2.8.5
-----
* Change "Send Payment" button to "Pay". (see paypal/PayPal-iOS-SDK#174)
* Minor bug fixes.
* Update card.io library to 5.0.2.
@dgoldman-pdx
Copy link
Contributor

  1. In the latest release of the PayPal-iOS-SDK, this button now says Pay rather than Send Payment.
  2. @SinisterCB I appreciate your thorough explanation! If we stick to standard PayPal terminology here (as I think is going to have to be the case), then would Continue be better for you? If so, maybe I can eventually get internal agreement to allow apps to tell our SDK whether to use Pay or Continue.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants