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: 159d0b080b0fb36119cdf1c15e0ca07936e938237fd012ed67ddf8f6121dbb53
4
- data.tar.gz: 7d8812db2e69fc22092bfcca4aa61d30a7578f2d7b5852bbc2f321d47a28f734
3
+ metadata.gz: ec2de3863ee37303126a6f3b58f9e0e0e0081f983fcc7436eeef937b8429115d
4
+ data.tar.gz: 976987d8fb51788da045850771b4b7c76ee9dbe2b6d7c781dc4e9874e1dde8cf
5
5
  SHA512:
6
- metadata.gz: 834c524e29ee8e810f6e9ee3dace1ab105e8665c19315a1a3664f14e88118bb1bb0705af5729fbbc11b4ba439bdf7e4f9c8d19dfe9a840938cef9f84255dfc0f
7
- data.tar.gz: b0ffa2b76120f84ecccf2973cc2dee52e3001a2a5403a5f4c249b82cc222a01f8e391ad420557840737730429ed5ce36a2c867736413ad38a9efefe3277bb65a
6
+ metadata.gz: 3d92e73fd62a729f1a0bc9d94798f181f266958cf6bd03cf05ed753650edf7cf00d12b054d0aa219bd361c57be979f116a0b605c48d9fcb857776a39c4450bde
7
+ data.tar.gz: 82ed3baaf020fbaded7337706681b204bff951827f13180ccb8d91a13c5df1bed0d08ddcda4b44858bcade41ecf9ea7c6cdfd60575cef110d148255532d8e44d
@@ -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 customer's to use any payment method supported in their area to complete checkout on your storefront.
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
- client_Id: YOUR_CLIENT_ID
71
+ client_id: YOUR_CLIENT_ID
67
72
  client_secret: YOUR_CLIENT_SECRET
68
73
  ```
69
74
 
@@ -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.
@@ -1,5 +1,5 @@
1
1
  module Workarea
2
2
  module Paypal
3
- VERSION = '3.0.0'.freeze
3
+ VERSION = '3.0.1'.freeze
4
4
  end
5
5
  end
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.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-03 00:00:00.000000000 Z
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