workarea-paypal 3.0.0 → 3.0.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ec2de3863ee37303126a6f3b58f9e0e0e0081f983fcc7436eeef937b8429115d
|
4
|
+
data.tar.gz: 976987d8fb51788da045850771b4b7c76ee9dbe2b6d7c781dc4e9874e1dde8cf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3d92e73fd62a729f1a0bc9d94798f181f266958cf6bd03cf05ed753650edf7cf00d12b054d0aa219bd361c57be979f116a0b605c48d9fcb857776a39c4450bde
|
7
|
+
data.tar.gz: 82ed3baaf020fbaded7337706681b204bff951827f13180ccb8d91a13c5df1bed0d08ddcda4b44858bcade41ecf9ea7c6cdfd60575cef110d148255532d8e44d
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
Workarea Paypal 3.0.1 (2020-03-17)
|
2
|
+
--------------------------------------------------------------------------------
|
3
|
+
|
4
|
+
* Add upgrade guide
|
5
|
+
|
6
|
+
PAYPAL-6
|
7
|
+
Matt Duffy
|
8
|
+
|
9
|
+
|
10
|
+
|
1
11
|
Workarea Paypal 3.0.0 (2020-03-03)
|
2
12
|
--------------------------------------------------------------------------------
|
3
13
|
|
data/README.md
CHANGED
@@ -3,7 +3,12 @@ Workarea PayPal
|
|
3
3
|
|
4
4
|
A Workarea Commerce plugin that adds support for PayPal payments. This plugin adds a new tender type in checkout, which allows users to pay for their items with PayPal.
|
5
5
|
|
6
|
-
As of v3.0, this plugin utilizes the [PayPal Commerce Platform](https://www.paypal.com/us/webapps/mpp/commerce-platform). By default this integrates PayPal's [Smart Payment Buttons](https://developer.paypal.com/docs/commerce-platform/payment/checkout/) into your Workarea Application to allow
|
6
|
+
As of v3.0, this plugin utilizes the [PayPal Commerce Platform](https://www.paypal.com/us/webapps/mpp/commerce-platform). By default this integrates PayPal's [Smart Payment Buttons](https://developer.paypal.com/docs/commerce-platform/payment/checkout/) into your Workarea Application to allow customers to use any payment method supported in their area to complete checkout on your storefront.
|
7
|
+
|
8
|
+
Upgrading to v3.0.0
|
9
|
+
--------------------------------------------------------------------------------
|
10
|
+
|
11
|
+
See the [upgrade guide](UPGRADE.md) for information on upgrading from v2.x of this plugin.
|
7
12
|
|
8
13
|
Getting Started
|
9
14
|
--------------------------------------------------------------------------------
|
@@ -63,7 +68,7 @@ Then, add a PayPal section:
|
|
63
68
|
|
64
69
|
```yaml
|
65
70
|
paypal:
|
66
|
-
|
71
|
+
client_id: YOUR_CLIENT_ID
|
67
72
|
client_secret: YOUR_CLIENT_SECRET
|
68
73
|
```
|
69
74
|
|
data/UPGRADE.md
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
Upgrading This Gem from v2.x to v3.0.0
|
2
|
+
================================================================================
|
3
|
+
|
4
|
+
As of this gem's v3.0 version, this plugin utilizes the [PayPal Commerce Platform](https://www.paypal.com/us/webapps/mpp/commerce-platform). By default this integrates PayPal's [Smart Payment Buttons](https://developer.paypal.com/docs/commerce-platform/payment/checkout/) into your Workarea Application to allow customers to use any payment method supported in their area to complete checkout on your storefront.
|
5
|
+
|
6
|
+
Upgrading will require approximately the following steps:
|
7
|
+
|
8
|
+
1. New PayPal Account Setup (see [README](https://github.com/workarea-commerce/workarea-paypal#account-setup))
|
9
|
+
* Create a new [PayPal business account](https://www.paypal.com/signin/client?flow=provisionUser) to generate sandbox credentials.
|
10
|
+
* Add credentials to your application.
|
11
|
+
|
12
|
+
|
13
|
+
2. Update your application Gemfile
|
14
|
+
|
15
|
+
`gem 'workarea-paypal', '~> 3.0.0'`
|
16
|
+
|
17
|
+
3. Rework any customizations your application made around PayPal. Information around what change is provided below to give you an idea of areas you might need to address.
|
18
|
+
|
19
|
+
4. Test locally and/or staging to ensure your application is communicating with PayPal.
|
20
|
+
|
21
|
+
5. Generate a live REST API app within PayPal to get production credentials.
|
22
|
+
|
23
|
+
6. Add production credentials and deploy.
|
24
|
+
|
25
|
+
Plugin Changes
|
26
|
+
---------------
|
27
|
+
|
28
|
+
This represents a completely new integration that will require any customizations your application has made to PayPal behavior to be updated to be compatible with v3 of this plugin. As with any change, you should follow the setup steps for the plugin and test extensively to ensure everything is working properly before deploying to production.
|
29
|
+
|
30
|
+
This upgrade will require a new PayPal merchant account and updating credentials for both your sandbox and live environments. Contact Workarea Support or PayPal directly with any questions regarding transitioning your application.
|
31
|
+
|
32
|
+
### Storefront Changes
|
33
|
+
|
34
|
+
Previous versions of this plugin rendered a static PayPal button on the top and bottom of the cart page, and provided a text-based payment option on the payment step of checkout.
|
35
|
+
|
36
|
+
The PayPal Commerce Platform integration is more dynamic. The cart page and the step both render a single instance of the [Smart Payment Buttons](https://developer.paypal.com/docs/commerce-platform/payment/checkout/). This generates a dynamic set of PayPal payment options that can vary based on device, customer location, and more. You will need to take this change into consideration and update your views to accommodate the visual change.
|
37
|
+
|
38
|
+
These buttons are rendered within an iframe controlled by PayPal. This iframe can change height for certain payment options, so its container should be flexible to account for that potential behavior. There is set of configuration options you can pass to the `paypal.Buttons` javascript method to customize how these buttons are rendered. Workarea provides a javascript configuration object, `WORKAREA.config.paypalButtons` to modify options passed. See the [PayPal documentation](https://developer.paypal.com/docs/checkout/integration-features/customize-button/) for valid options.
|
39
|
+
|
40
|
+
Smart Payment Buttons are entirely javascript-based. Part of this behavior eliminates a full redirect away from your site to PayPal, in favor of a separate window that allows the customer to interact with PayPal, and the PayPal javascript SDK to communicate back to your application without leaving the page.
|
41
|
+
|
42
|
+
### Payment Processing Changes
|
43
|
+
|
44
|
+
Previously, this plugin relied on the ActiveMerchant PayPal implementation to process payments with PayPal. As of v3, this is no longer the case, and instead utilizes PayPal's own [Checkout Ruby SDK](https://github.com/paypal/Checkout-Ruby-SDK). This provides the environment and client logic to securely communicate with PayPal.
|
45
|
+
|
46
|
+
With this new gateway, PayPal payments are captured immediately at the time a customer places an order. This is a change from the authorization behavior of the old API that allowed for captures at a later time. You will want to make sure your OMS and other payment related behaviors work with this change. If you need to continue doing authorizations when an order is placed, contact PayPal or Workarea Support to discuss options. As of this writing, the PayPal Commerce Platform has some features that do not yet support authorizations.
|
File without changes
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: workarea-paypal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- bcrouse
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-03-
|
11
|
+
date: 2020-03-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: workarea
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- LICENSE
|
73
73
|
- README.md
|
74
74
|
- Rakefile
|
75
|
+
- UPGRADE.md
|
75
76
|
- app/assets/images/workarea/admin/payment_icons/paypal.svg
|
76
77
|
- app/assets/images/workarea/storefront/payment_icons/paypal.svg
|
77
78
|
- app/assets/javascripts/workarea/storefront/paypal/config.js.erb
|
@@ -172,8 +173,8 @@ files:
|
|
172
173
|
- test/factories/workarea/capture_denied_webhook.json
|
173
174
|
- test/factories/workarea/paypal.rb
|
174
175
|
- test/helpers/workarea/storefront/paypal_helper_test.rb
|
175
|
-
- test/integration/workarea/storefront/papyal_place_order_integration_test.rb
|
176
176
|
- test/integration/workarea/storefront/paypal_integration_test.rb
|
177
|
+
- test/integration/workarea/storefront/paypal_place_order_integration_test.rb
|
177
178
|
- test/lib/workarea/paypal/gateway_test.rb
|
178
179
|
- test/models/workarea/payment/authorize/paypal_test.rb
|
179
180
|
- test/models/workarea/payment/capture/paypal_test.rb
|