Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test SolidusBraintree SSF update with Venmo Pay #106

Closed
gsmendoza opened this issue Feb 21, 2023 · 11 comments
Closed

Test SolidusBraintree SSF update with Venmo Pay #106

gsmendoza opened this issue Feb 21, 2023 · 11 comments
Assignees

Comments

@gsmendoza
Copy link
Contributor

Blockers

Depends on #102.

Requirements

Tester might need to be in US. Wasn't successful in faking a Venmo payment. See #102 (comment).

@gsmendoza
Copy link
Contributor Author

@kennyadsl Like you suggested a few days ago, I've been able to check out with Venmo in development by setting force_buyer_country to 'US'. Will document the steps later.

CC @RyanofWoods

@RyanofWoods
Copy link
Contributor

I tried that, but it didn't work for me @gsmendoza 🤔

@gsmendoza
Copy link
Contributor Author

@RyanofWoods Weird, I was able to get it working earlier. Note the saved Venmo payment method in my app:

image

Will continue to test.

@gsmendoza
Copy link
Contributor Author

@kennyadsl @RyanofWoods I'm getting the "Merchant account does not support payment instrument. (91577) Payment instrument type is not accepted by this merchant account. (91517)" error now :( Will just try again tomorrow...

image

@gsmendoza gsmendoza removed their assignment Feb 24, 2023
@FrancescoAiello01
Copy link
Collaborator

Hey everyone, I was able to test it on my side since I'm located in the US. Here's how it went (going through the testing checklist):

Ensure the Venmo checkout button opens a modal with a QR code and is closeable.
This works as expected:

Screenshots Screenshot 2023-02-24 at 10 28 50 AM Screenshot 2023-02-24 at 10 28 43 AM

Do a full transaction
This works as expected:

Screenshots Scanning the QR code takes me here: Screenshot 2023-02-24 at 10 30 29 AM

Clicking confirm succeeds:
Screenshot 2023-02-24 at 10 30 38 AM
confirm succeeds:

Ensure that you can also save the payment source in the user wallet.

This works as expected. I'm also able to create another order in the admin interface using the user's saved payment source.

Screenshots Screenshot 2023-02-24 at 10 33 15 AM

Ensure the saved Venmo wallet payment source loads in the partial correctly.

This looks right, but I'm not able to reuse the payment source on the user-facing flow:

Screenshots Screenshot 2023-02-24 at 10 34 58 AM

Ensure the saved Venmo payment source can be reused for another order.

This only seems to work in the admin interface for me. In user-facing checkout I see the error in the above screenshot.

Test doing transactions on the admin

This works as expected:

Screenshots

Order created via admin:
Screenshot 2023-02-24 at 10 27 18 AM

Testing voiding and refunding Venmo transactions

Voiding works as expected, but I'm not able to test refunding because the payment state is stuck on Submitted For Settlement. Not sure if that's a nuance with the sandbox environment 🤔

@FrancescoAiello01
Copy link
Collaborator

I'm not super familiar with Braintree or this gem, so I might have messed something up. LMK if you want me to re-test anything in any specific way!

@RyanofWoods
Copy link
Contributor

RyanofWoods commented Feb 26, 2023

I am guessing the "all fields are empty error" is due to the card form being visible/not-disabled from previous experience.

@gsmendoza
Copy link
Contributor Author

Thanks for the excellent work @FrancescoAiello01 . I'll test if I can reproduce the "all fields are empty" error with PayPal checkout.

@gsmendoza gsmendoza self-assigned this Feb 28, 2023
@gsmendoza
Copy link
Contributor Author

Hey @FrancescoAiello01! I didn't get the issue with a saved PayPal payment source. Can you debug handleVenmoSuccess in lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/venmo_button.js? I think that function should be the one disabling the hosted field inputs.

I have also merged a PR to master, so you may also want to update your master branch.

@FrancescoAiello01
Copy link
Collaborator

Hey @FrancescoAiello01! I didn't get the issue with a saved PayPal payment source. Can you debug handleVenmoSuccess in lib/generators/solidus_braintree/install/templates/app/assets/javascripts/spree/frontend/solidus_braintree/venmo_button.js? I think that function should be the one disabling the hosted field inputs.

I have also merged a PR to master, so you may also want to update your master branch.

Sure I'll take a look!

@FrancescoAiello01
Copy link
Collaborator

I paired with @elia and we found that the import maps weren't working correctly in the solidus-starter-frontend. Regenerating the sandbox app fixed it. We also found that the credit card iframe is still interactable when the fieldset is disabled, so we created a small PR to fix that: solidusio/solidus_starter_frontend#326

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

No branches or pull requests

3 participants