WooCommerce Stripe Payment Gateway - Version 6.2.0

Version Description

  • 2022-02-17 =
  • Add - Add onboarding payment gateway setup methods.
  • Fix - Enable Stripe payment method after connecting account.
  • Fix - Missing statement descriptor in account summary API when not set in Stripe.

See changelog for all versions.

Download this release

Release Info

Developer woothemes
Plugin Icon 128x128 WooCommerce Stripe Payment Gateway
Version 6.2.0
Comparing to
See all releases

Code changes from version 6.1.0 to 6.2.0

build/payment_gateways.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array('react', 'react-dom', 'wc-navigation', 'wp-components', 'wp-data', 'wp-data-controls', 'wp-element', 'wp-i18n', 'wp-polyfill', 'wp-primitives'), 'version' => '8cec8ac706a3066dab1bf95c3ea3f8f7');
1
+ <?php return array('dependencies' => array('react', 'react-dom', 'wc-navigation', 'wp-components', 'wp-data', 'wp-data-controls', 'wp-element', 'wp-i18n', 'wp-polyfill', 'wp-primitives'), 'version' => 'b4b8e86ff3d285f29625e368e9c51bbf');
build/payment_requests_settings.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array('react', 'react-dom', 'wc-navigation', 'wp-components', 'wp-data', 'wp-data-controls', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => 'c560474cde9517938d81521a40d66d0f');
1
+ <?php return array('dependencies' => array('react', 'react-dom', 'wc-navigation', 'wp-components', 'wp-data', 'wp-data-controls', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => 'd04f553a7fb5521ec266f6ef95e914d1');
build/upe_settings.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array('lodash', 'react', 'react-dom', 'wc-currency', 'wc-navigation', 'wc-store-data', 'wp-api-fetch', 'wp-components', 'wp-data', 'wp-data-controls', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-polyfill', 'wp-primitives', 'wp-url'), 'version' => '67278aebfc9b1c6347177f28be1734b2');
1
+ <?php return array('dependencies' => array('lodash', 'react', 'react-dom', 'wc-currency', 'wc-navigation', 'wc-store-data', 'wp-api-fetch', 'wp-components', 'wp-data', 'wp-data-controls', 'wp-dom-ready', 'wp-element', 'wp-i18n', 'wp-polyfill', 'wp-primitives', 'wp-url'), 'version' => '517c9b8a15dfa040788de3e3faf4309b');
changelog.txt CHANGED
@@ -1,5 +1,10 @@
1
  *** Changelog ***
2
 
 
 
 
 
 
3
  = 6.1.0 - 2022-01-26 =
4
  * Tweak - Use the newly exposed LoadableMask component provided by WooCommerce Blocks to trigger the loading state for Payment Request Buttons.
5
  * Fix - Response type for account summary API.
1
  *** Changelog ***
2
 
3
+ = 6.2.0 - 2022-02-17 =
4
+ * Add - Add onboarding payment gateway setup methods.
5
+ * Fix - Enable Stripe payment method after connecting account.
6
+ * Fix - Missing statement descriptor in account summary API when not set in Stripe.
7
+
8
  = 6.1.0 - 2022-01-26 =
9
  * Tweak - Use the newly exposed LoadableMask component provided by WooCommerce Blocks to trigger the loading state for Payment Request Buttons.
10
  * Fix - Response type for account summary API.
includes/admin/class-wc-rest-stripe-account-controller.php CHANGED
@@ -25,7 +25,15 @@ class WC_REST_Stripe_Account_Controller extends WC_Stripe_REST_Base_Controller {
25
  */
26
  private $account;
27
 
28
- public function __construct( WC_Stripe_Account $account ) {
 
 
 
 
 
 
 
 
29
  $this->account = $account;
30
  }
31
 
@@ -98,13 +106,22 @@ class WC_REST_Stripe_Account_Controller extends WC_Stripe_REST_Base_Controller {
98
  public function get_account_summary() {
99
  $account = $this->account->get_cached_account_data();
100
 
 
 
 
 
 
 
 
 
 
101
  return new WP_REST_Response(
102
  [
103
  'has_pending_requirements' => $this->account->has_pending_requirements(),
104
  'has_overdue_requirements' => $this->account->has_overdue_requirements(),
105
  'current_deadline' => $account['requirements']['current_deadline'] ?? null,
106
  'status' => $this->account->get_account_status(),
107
- 'statement_descriptor' => $account['settings']['payments']['statement_descriptor'] ?? '',
108
  'store_currencies' => [
109
  'default' => $account['default_currency'] ?? get_woocommerce_currency(),
110
  'supported' => $this->account->get_supported_store_currencies(),
25
  */
26
  private $account;
27
 
28
+ /**
29
+ * Stripe payment gateway.
30
+ *
31
+ * @var WC_Gateway_Stripe
32
+ */
33
+ private $gateway;
34
+
35
+ public function __construct( WC_Gateway_Stripe $gateway, WC_Stripe_Account $account ) {
36
+ $this->gateway = $gateway;
37
  $this->account = $account;
38
  }
39
 
106
  public function get_account_summary() {
107
  $account = $this->account->get_cached_account_data();
108
 
109
+ // Use statement descriptor from settings, falling back to Stripe account statement descriptor if needed.
110
+ $statement_descriptor = WC_Stripe_Helper::clean_statement_descriptor( $this->gateway->get_option( 'statement_descriptor' ) );
111
+ if ( empty( $statement_descriptor ) ) {
112
+ $statement_descriptor = $account['settings']['payments']['statement_descriptor'];
113
+ }
114
+ if ( empty( $statement_descriptor ) ) {
115
+ $statement_descriptor = null;
116
+ }
117
+
118
  return new WP_REST_Response(
119
  [
120
  'has_pending_requirements' => $this->account->has_pending_requirements(),
121
  'has_overdue_requirements' => $this->account->has_overdue_requirements(),
122
  'current_deadline' => $account['requirements']['current_deadline'] ?? null,
123
  'status' => $this->account->get_account_status(),
124
+ 'statement_descriptor' => $statement_descriptor,
125
  'store_currencies' => [
126
  'default' => $account['default_currency'] ?? get_woocommerce_currency(),
127
  'supported' => $this->account->get_supported_store_currencies(),
includes/admin/class-wc-rest-stripe-account-keys-controller.php CHANGED
@@ -193,7 +193,15 @@ class WC_REST_Stripe_Account_Keys_Controller extends WC_Stripe_REST_Base_Control
193
  $settings = get_option( self::STRIPE_GATEWAY_SETTINGS_OPTION_NAME, [] );
194
 
195
  // If all keys were empty, then is a new account; we need to set the test/live mode.
196
- $new_account = ! trim( $settings['publishable_key'] ) && ! trim( $settings['secret_key'] ) && ! trim( $settings['test_publishable_key'] ) && ! trim( $settings['test_secret_key'] );
 
 
 
 
 
 
 
 
197
 
198
  $settings['publishable_key'] = is_null( $publishable_key ) ? $settings['publishable_key'] : $publishable_key;
199
  $settings['secret_key'] = is_null( $secret_key ) ? $settings['secret_key'] : $secret_key;
@@ -203,11 +211,14 @@ class WC_REST_Stripe_Account_Keys_Controller extends WC_Stripe_REST_Base_Control
203
  $settings['test_webhook_secret'] = is_null( $test_webhook_secret ) ? $settings['test_webhook_secret'] : $test_webhook_secret;
204
 
205
  if ( $new_account ) {
 
206
  if ( trim( $settings['publishable_key'] ) && trim( $settings['secret_key'] ) ) {
207
  $settings['testmode'] = 'no';
208
- } else if ( trim( $settings['test_publishable_key'] ) && trim( $settings['test_secret_key'] ) ) {
209
  $settings['testmode'] = 'yes';
210
  }
 
 
211
  }
212
 
213
  update_option( self::STRIPE_GATEWAY_SETTINGS_OPTION_NAME, $settings );
193
  $settings = get_option( self::STRIPE_GATEWAY_SETTINGS_OPTION_NAME, [] );
194
 
195
  // If all keys were empty, then is a new account; we need to set the test/live mode.
196
+ $new_account = ! trim( $settings['publishable_key'] )
197
+ && ! trim( $settings['secret_key'] )
198
+ && ! trim( $settings['test_publishable_key'] )
199
+ && ! trim( $settings['test_secret_key'] );
200
+ // If all new keys are empty, then account is being disconnected. We should disable the payment gateway.
201
+ $is_deleting_account = ! trim( $publishable_key )
202
+ && ! trim( $secret_key )
203
+ && ! trim( $test_publishable_key )
204
+ && ! trim( $test_secret_key );
205
 
206
  $settings['publishable_key'] = is_null( $publishable_key ) ? $settings['publishable_key'] : $publishable_key;
207
  $settings['secret_key'] = is_null( $secret_key ) ? $settings['secret_key'] : $secret_key;
211
  $settings['test_webhook_secret'] = is_null( $test_webhook_secret ) ? $settings['test_webhook_secret'] : $test_webhook_secret;
212
 
213
  if ( $new_account ) {
214
+ $settings['enabled'] = 'yes';
215
  if ( trim( $settings['publishable_key'] ) && trim( $settings['secret_key'] ) ) {
216
  $settings['testmode'] = 'no';
217
+ } elseif ( trim( $settings['test_publishable_key'] ) && trim( $settings['test_secret_key'] ) ) {
218
  $settings['testmode'] = 'yes';
219
  }
220
+ } elseif ( $is_deleting_account ) {
221
+ $settings['enabled'] = 'no';
222
  }
223
 
224
  update_option( self::STRIPE_GATEWAY_SETTINGS_OPTION_NAME, $settings );
includes/class-wc-gateway-stripe.php CHANGED
@@ -123,6 +123,7 @@ class WC_Gateway_Stripe extends WC_Stripe_Payment_Gateway {
123
  add_action( 'set_logged_in_cookie', [ $this, 'set_cookie_on_current_request' ] );
124
  add_filter( 'woocommerce_get_checkout_payment_url', [ $this, 'get_checkout_payment_url' ], 10, 2 );
125
  add_filter( 'woocommerce_settings_api_sanitized_fields_' . $this->id, [ $this, 'settings_api_sanitized_fields' ] );
 
126
 
127
  // Note: display error is in the parent class.
128
  add_action( 'admin_notices', [ $this, 'display_errors' ], 9999 );
@@ -1162,4 +1163,88 @@ class WC_Gateway_Stripe extends WC_Stripe_Payment_Gateway {
1162
 
1163
  return $value;
1164
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1165
  }
123
  add_action( 'set_logged_in_cookie', [ $this, 'set_cookie_on_current_request' ] );
124
  add_filter( 'woocommerce_get_checkout_payment_url', [ $this, 'get_checkout_payment_url' ], 10, 2 );
125
  add_filter( 'woocommerce_settings_api_sanitized_fields_' . $this->id, [ $this, 'settings_api_sanitized_fields' ] );
126
+ add_filter( 'woocommerce_gateway_' . $this->id . '_settings_values', [ $this, 'update_onboarding_settings' ] );
127
 
128
  // Note: display error is in the parent class.
129
  add_action( 'admin_notices', [ $this, 'display_errors' ], 9999 );
1163
 
1164
  return $value;
1165
  }
1166
+
1167
+ /**
1168
+ * Get required setting keys for setup.
1169
+ *
1170
+ * @return array Array of setting keys used for setup.
1171
+ */
1172
+ public function get_required_settings_keys() {
1173
+ return [ 'publishable_key', 'secret_key' ];
1174
+ }
1175
+
1176
+ /**
1177
+ * Get the connection URL.
1178
+ *
1179
+ * @return string Connection URL.
1180
+ */
1181
+ public function get_connection_url( $return_url = '' ) {
1182
+ $api = new WC_Stripe_Connect_API();
1183
+ $connect = new WC_Stripe_Connect( $api );
1184
+
1185
+ $url = $connect->get_oauth_url( $return_url );
1186
+
1187
+ return is_wp_error( $url ) ? null : $url;
1188
+ }
1189
+
1190
+ /**
1191
+ * Get help text to display during quick setup.
1192
+ *
1193
+ * @return string
1194
+ */
1195
+ public function get_setup_help_text() {
1196
+ return sprintf(
1197
+ /* translators: %1$s Link to Stripe API details, %2$s Link to register a Stripe account */
1198
+ __( 'Your API details can be obtained from your <a href="%1$s">Stripe account</a>. Don’t have a Stripe account? <a href="%2$s">Create one.</a>', 'woocommerce-gateway-stripe' ),
1199
+ 'https://dashboard.stripe.com/apikeys',
1200
+ 'https://dashboard.stripe.com/register'
1201
+ );
1202
+ }
1203
+
1204
+ /**
1205
+ * Determine if the gateway still requires setup.
1206
+ *
1207
+ * @return bool
1208
+ */
1209
+ public function needs_setup() {
1210
+ return ! $this->get_option( 'publishable_key' ) || ! $this->get_option( 'secret_key' );
1211
+ }
1212
+
1213
+ /**
1214
+ * Updates the test mode based on keys provided when setting up the gateway via onboarding.
1215
+ *
1216
+ * @return array
1217
+ */
1218
+ public function update_onboarding_settings( $settings ) {
1219
+ if ( ! isset( $_SERVER['HTTP_REFERER'] ) ) {
1220
+ return;
1221
+ }
1222
+
1223
+ parse_str( wp_parse_url( $_SERVER['HTTP_REFERER'], PHP_URL_QUERY ), $queries ); // phpcs:ignore sanitization ok.
1224
+
1225
+ // Determine if merchant is onboarding (page='wc-admin' and task='payments').
1226
+ if (
1227
+ ! isset( $queries ) ||
1228
+ ! isset( $queries['page'] ) ||
1229
+ ! isset( $queries['task'] ) ||
1230
+ 'wc-admin' !== $queries['page'] ||
1231
+ 'payments' !== $queries['task']
1232
+ ) {
1233
+ return;
1234
+ }
1235
+
1236
+ if ( ! empty( $settings['publishable_key'] ) && ! empty( $settings['secret_key'] ) ) {
1237
+ if ( strpos( $settings['publishable_key'], 'pk_test_' ) === 0 || strpos( $settings['secret_key'], 'sk_test_' ) === 0 ) {
1238
+ $settings['test_publishable_key'] = $settings['publishable_key'];
1239
+ $settings['test_secret_key'] = $settings['secret_key'];
1240
+ unset( $settings['publishable_key'] );
1241
+ unset( $settings['secret_key'] );
1242
+ $settings['testmode'] = 'yes';
1243
+ } else {
1244
+ $settings['testmode'] = 'no';
1245
+ }
1246
+ }
1247
+
1248
+ return $settings;
1249
+ }
1250
  }
includes/class-wc-stripe-intent-controller.php CHANGED
@@ -407,7 +407,8 @@ class WC_Stripe_Intent_Controller {
407
  'amount' => WC_Stripe_Helper::get_stripe_amount( $amount, strtolower( $currency ) ),
408
  'currency' => strtolower( $currency ),
409
  'metadata' => $gateway->get_metadata_from_order( $order ),
410
- 'description' => __( 'Stripe - Order', 'woocommerce-gateway-stripe' ) . ' ' . $order->get_id(),
 
411
  ];
412
 
413
  if ( '' !== $selected_upe_payment_type ) {
407
  'amount' => WC_Stripe_Helper::get_stripe_amount( $amount, strtolower( $currency ) ),
408
  'currency' => strtolower( $currency ),
409
  'metadata' => $gateway->get_metadata_from_order( $order ),
410
+ /* translators: 1) blog name 2) order number */
411
+ 'description' => sprintf( __( '%1$s - Order %2$s', 'woocommerce-gateway-stripe' ), wp_specialchars_decode( get_bloginfo( 'name' ), ENT_QUOTES ), $order->get_order_number() ),
412
  ];
413
 
414
  if ( '' !== $selected_upe_payment_type ) {
includes/connect/class-wc-stripe-connect.php CHANGED
@@ -128,6 +128,7 @@ if ( ! class_exists( 'WC_Stripe_Connect' ) ) {
128
  $prefix = $is_test ? 'test_' : '';
129
  $default_options = $this->get_default_stripe_config();
130
  $options = array_merge( $default_options, get_option( self::SETTINGS_OPTION, [] ) );
 
131
  $options['testmode'] = $is_test ? 'yes' : 'no';
132
  $options[ $prefix . 'publishable_key' ] = $result->publishableKey; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
133
  $options[ $prefix . 'secret_key' ] = $result->secretKey; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
128
  $prefix = $is_test ? 'test_' : '';
129
  $default_options = $this->get_default_stripe_config();
130
  $options = array_merge( $default_options, get_option( self::SETTINGS_OPTION, [] ) );
131
+ $options['enabled'] = 'yes';
132
  $options['testmode'] = $is_test ? 'yes' : 'no';
133
  $options[ $prefix . 'publishable_key' ] = $result->publishableKey; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
134
  $options[ $prefix . 'secret_key' ] = $result->secretKey; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
includes/payment-methods/class-wc-stripe-upe-payment-gateway.php CHANGED
@@ -121,7 +121,7 @@ class WC_Stripe_UPE_Payment_Gateway extends WC_Gateway_Stripe {
121
  $this->maybe_init_pre_orders();
122
 
123
  $main_settings = get_option( 'woocommerce_stripe_settings' );
124
- $this->title = $this->get_option( 'title_upe' );
125
  $this->description = '';
126
  $this->enabled = $this->get_option( 'enabled' );
127
  $this->saved_cards = 'yes' === $this->get_option( 'saved_cards' );
121
  $this->maybe_init_pre_orders();
122
 
123
  $main_settings = get_option( 'woocommerce_stripe_settings' );
124
+ $this->title = ! empty( $this->get_option( 'title_upe' ) ) ? $this->get_option( 'title_upe' ) : $this->form_fields['title_upe']['default'];
125
  $this->description = '';
126
  $this->enabled = $this->get_option( 'enabled' );
127
  $this->saved_cards = 'yes' === $this->get_option( 'saved_cards' );
languages/woocommerce-gateway-stripe.pot CHANGED
@@ -2,14 +2,14 @@
2
  # This file is distributed under the same license as the WooCommerce Stripe Gateway plugin.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WooCommerce Stripe Gateway 6.1.0\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/woocommerce-gateway-stripe\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "POT-Creation-Date: 2022-01-26T22:33:57+00:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.5.0\n"
15
  "X-Domain: woocommerce-gateway-stripe\n"
@@ -54,7 +54,7 @@ msgstr ""
54
 
55
  #: includes/abstracts/abstract-wc-stripe-payment-gateway-voucher.php:245
56
  #: includes/abstracts/abstract-wc-stripe-payment-gateway-voucher.php:353
57
- #: includes/class-wc-stripe-intent-controller.php:434
58
  #: includes/class-wc-stripe-webhook-handler.php:832
59
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:557
60
  msgid "Awaiting payment."
@@ -98,6 +98,7 @@ msgstr ""
98
 
99
  #. translators: 1) blog name 2) order number
100
  #: includes/abstracts/abstract-wc-stripe-payment-gateway.php:421
 
101
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:528
102
  msgid "%1$s - Order %2$s"
103
  msgstr ""
@@ -218,22 +219,22 @@ msgid "Your Stripe testing webhook endpoint URL, obtained from your Stripe dashb
218
  msgstr ""
219
 
220
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:139
221
- #: includes/class-wc-gateway-stripe.php:994
222
  msgid "The \"Live Publishable Key\" should start with \"pk_live\", enter the correct key."
223
  msgstr ""
224
 
225
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:151
226
- #: includes/class-wc-gateway-stripe.php:1002
227
  msgid "The \"Live Secret Key\" should start with \"sk_live\" or \"rk_live\", enter the correct key."
228
  msgstr ""
229
 
230
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:163
231
- #: includes/class-wc-gateway-stripe.php:1010
232
  msgid "The \"Test Publishable Key\" should start with \"pk_test\", enter the correct key."
233
  msgstr ""
234
 
235
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:175
236
- #: includes/class-wc-gateway-stripe.php:1018
237
  msgid "The \"Test Secret Key\" should start with \"sk_test\" or \"rk_test\", enter the correct key."
238
  msgstr ""
239
 
@@ -267,6 +268,7 @@ msgstr ""
267
  msgid "Payment capture failed to complete with the following message: %s"
268
  msgstr ""
269
 
 
270
  #: includes/admin/class-wc-rest-stripe-orders-controller.php:163
271
  msgid "Unknown error"
272
  msgstr ""
@@ -1287,52 +1289,52 @@ msgid "Stripe works by adding payment fields on the checkout and then sending th
1287
  msgstr ""
1288
 
1289
  #. translators: 1) Opening anchor tag 2) closing anchor tag
1290
- #: includes/class-wc-gateway-stripe.php:157
1291
  msgid "If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them."
1292
  msgstr ""
1293
 
1294
  #. translators: link to Stripe testing page
1295
- #: includes/class-wc-gateway-stripe.php:221
1296
  msgid "TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href=\"%s\" target=\"_blank\">Testing Stripe documentation</a> for more card numbers."
1297
  msgstr ""
1298
 
1299
- #: includes/class-wc-gateway-stripe.php:260
1300
  msgid "Credit or debit card"
1301
  msgstr ""
1302
 
1303
  #: build/index.js:1
1304
- #: includes/class-wc-gateway-stripe.php:268
1305
  #: client/blocks/credit-card/elements.js:117
1306
  msgid "Card Number"
1307
  msgstr ""
1308
 
1309
  #: build/index.js:1
1310
- #: includes/class-wc-gateway-stripe.php:279
1311
  #: client/blocks/credit-card/elements.js:134
1312
  msgid "Expiry Date"
1313
  msgstr ""
1314
 
1315
- #: includes/class-wc-gateway-stripe.php:287
1316
  msgid "Card Code (CVC)"
1317
  msgstr ""
1318
 
1319
- #: includes/class-wc-gateway-stripe.php:558
1320
  msgid "This represents the fee Stripe collects for the transaction."
1321
  msgstr ""
1322
 
1323
- #: includes/class-wc-gateway-stripe.php:559
1324
  msgid "Stripe Fee:"
1325
  msgstr ""
1326
 
1327
- #: includes/class-wc-gateway-stripe.php:595
1328
  msgid "This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account."
1329
  msgstr ""
1330
 
1331
- #: includes/class-wc-gateway-stripe.php:596
1332
  msgid "Stripe Payout:"
1333
  msgstr ""
1334
 
1335
- #: includes/class-wc-gateway-stripe.php:622
1336
  #: includes/class-wc-stripe-order-handler.php:153
1337
  #: includes/class-wc-stripe-webhook-handler.php:256
1338
  #: includes/compat/trait-wc-stripe-subscriptions.php:303
@@ -1341,7 +1343,7 @@ msgstr ""
1341
  msgid "Sorry, we are unable to process your payment at this time. Please retry later."
1342
  msgstr ""
1343
 
1344
- #: includes/class-wc-gateway-stripe.php:675
1345
  msgid ""
1346
  "Almost there!\n"
1347
  "\n"
@@ -1349,50 +1351,55 @@ msgid ""
1349
  msgstr ""
1350
 
1351
  #. translators: %s is the order Id
1352
- #: includes/class-wc-gateway-stripe.php:697
1353
  msgid "Payment Intent not found for order #%s"
1354
  msgstr ""
1355
 
1356
  #. translators: 1) The error message that was received from Stripe.
1357
- #: includes/class-wc-gateway-stripe.php:936
1358
  #: includes/class-wc-stripe-webhook-handler.php:856
1359
  #: includes/class-wc-stripe-webhook-handler.php:907
1360
  msgid "Stripe SCA authentication failed. Reason: %s"
1361
  msgstr ""
1362
 
1363
- #: includes/class-wc-gateway-stripe.php:937
1364
  msgid "Stripe SCA authentication failed."
1365
  msgstr ""
1366
 
1367
  #. translators: %1, %2, %3, and %4 are all HTML markup tags
1368
- #: includes/class-wc-gateway-stripe.php:1058
1369
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:1226
1370
  msgid "%1$sClear all Stripe account keys.%2$s %3$sThis will disable any connection to Stripe.%4$s"
1371
  msgstr ""
1372
 
1373
  #. translators: %1, %2 and %3 are all HTML markup tags
1374
- #: includes/class-wc-gateway-stripe.php:1070
1375
  msgid "%1$sSet up or link an existing Stripe account.%2$s By clicking this button you agree to the %3$sTerms of Service%2$s. Or, manually enter Stripe account keys below."
1376
  msgstr ""
1377
 
1378
- #: includes/class-wc-gateway-stripe.php:1076
1379
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:1244
1380
  msgid "Manually enter Stripe keys below."
1381
  msgstr ""
1382
 
1383
- #: includes/class-wc-gateway-stripe.php:1137
1384
  msgid "customer bank statement"
1385
  msgstr ""
1386
 
1387
- #: includes/class-wc-gateway-stripe.php:1140
1388
  msgid "shortened customer bank statement"
1389
  msgstr ""
1390
 
1391
  #. translators: %1 field name, %2 Number of the maximum characters allowed
1392
- #: includes/class-wc-gateway-stripe.php:1156
1393
  msgid "The %1$s is invalid. The bank statement must contain only Latin characters, be between 5 and %2$u characters, contain at least one letter, and not contain any of the special characters: ' \" * &lt; &gt;"
1394
  msgstr ""
1395
 
 
 
 
 
 
1396
  #: includes/class-wc-stripe-api.php:150
1397
  #: includes/class-wc-stripe-api.php:184
1398
  msgid "There was a problem connecting to the Stripe API endpoint."
@@ -1632,8 +1639,8 @@ msgid "We're not able to process this payment."
1632
  msgstr ""
1633
 
1634
  #: includes/class-wc-stripe-intent-controller.php:84
1635
- #: includes/class-wc-stripe-intent-controller.php:564
1636
- #: includes/class-wc-stripe-intent-controller.php:624
1637
  msgid "CSRF verification failed."
1638
  msgstr ""
1639
 
@@ -1658,27 +1665,23 @@ msgstr ""
1658
  msgid "Failed to save payment method."
1659
  msgstr ""
1660
 
1661
- #: includes/class-wc-stripe-intent-controller.php:410
1662
- msgid "Stripe - Order"
1663
- msgstr ""
1664
-
1665
- #: includes/class-wc-stripe-intent-controller.php:454
1666
  msgid "We're not able to add this payment method. Please refresh the page and try again."
1667
  msgstr ""
1668
 
1669
- #: includes/class-wc-stripe-intent-controller.php:520
1670
  msgid "Unable to update UPE appearance values at this time."
1671
  msgstr ""
1672
 
1673
- #: includes/class-wc-stripe-intent-controller.php:570
1674
- #: includes/class-wc-stripe-intent-controller.php:582
1675
- #: includes/class-wc-stripe-intent-controller.php:642
1676
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:884
1677
  msgid "We're not able to process this payment. Please try again later."
1678
  msgstr ""
1679
 
1680
  #. translators: %1: transaction ID of the payment or a translated string indicating an unknown ID.
1681
- #: includes/class-wc-stripe-intent-controller.php:578
1682
  msgid "A payment with ID %s was used in an attempt to pay for this order. This payment intent ID does not match any payments for this order, so it was ignored and the order was not updated."
1683
  msgstr ""
1684
 
@@ -2454,6 +2457,7 @@ msgctxt "In failed SCA authentication for a pre-order."
2454
  msgid "Your pre-order is now available, but payment cannot be completed automatically. %s"
2455
  msgstr ""
2456
 
 
2457
  #: templates/emails/failed-preorder-authentication.php:20
2458
  msgid "Authorize the payment now &raquo;"
2459
  msgstr ""
2
  # This file is distributed under the same license as the WooCommerce Stripe Gateway plugin.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WooCommerce Stripe Gateway 6.2.0\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/woocommerce-gateway-stripe\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "POT-Creation-Date: 2022-02-17T00:44:10+00:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.5.0\n"
15
  "X-Domain: woocommerce-gateway-stripe\n"
54
 
55
  #: includes/abstracts/abstract-wc-stripe-payment-gateway-voucher.php:245
56
  #: includes/abstracts/abstract-wc-stripe-payment-gateway-voucher.php:353
57
+ #: includes/class-wc-stripe-intent-controller.php:435
58
  #: includes/class-wc-stripe-webhook-handler.php:832
59
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:557
60
  msgid "Awaiting payment."
98
 
99
  #. translators: 1) blog name 2) order number
100
  #: includes/abstracts/abstract-wc-stripe-payment-gateway.php:421
101
+ #: includes/class-wc-stripe-intent-controller.php:411
102
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:528
103
  msgid "%1$s - Order %2$s"
104
  msgstr ""
219
  msgstr ""
220
 
221
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:139
222
+ #: includes/class-wc-gateway-stripe.php:995
223
  msgid "The \"Live Publishable Key\" should start with \"pk_live\", enter the correct key."
224
  msgstr ""
225
 
226
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:151
227
+ #: includes/class-wc-gateway-stripe.php:1003
228
  msgid "The \"Live Secret Key\" should start with \"sk_live\" or \"rk_live\", enter the correct key."
229
  msgstr ""
230
 
231
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:163
232
+ #: includes/class-wc-gateway-stripe.php:1011
233
  msgid "The \"Test Publishable Key\" should start with \"pk_test\", enter the correct key."
234
  msgstr ""
235
 
236
  #: includes/admin/class-wc-rest-stripe-account-keys-controller.php:175
237
+ #: includes/class-wc-gateway-stripe.php:1019
238
  msgid "The \"Test Secret Key\" should start with \"sk_test\" or \"rk_test\", enter the correct key."
239
  msgstr ""
240
 
268
  msgid "Payment capture failed to complete with the following message: %s"
269
  msgstr ""
270
 
271
+ #. translators: %s: the error message.
272
  #: includes/admin/class-wc-rest-stripe-orders-controller.php:163
273
  msgid "Unknown error"
274
  msgstr ""
1289
  msgstr ""
1290
 
1291
  #. translators: 1) Opening anchor tag 2) closing anchor tag
1292
+ #: includes/class-wc-gateway-stripe.php:158
1293
  msgid "If your billing address has been changed for saved payment methods, be sure to remove any %1$ssaved payment methods%2$s on file and re-add them."
1294
  msgstr ""
1295
 
1296
  #. translators: link to Stripe testing page
1297
+ #: includes/class-wc-gateway-stripe.php:222
1298
  msgid "TEST MODE ENABLED. In test mode, you can use the card number 4242424242424242 with any CVC and a valid expiration date or check the <a href=\"%s\" target=\"_blank\">Testing Stripe documentation</a> for more card numbers."
1299
  msgstr ""
1300
 
1301
+ #: includes/class-wc-gateway-stripe.php:261
1302
  msgid "Credit or debit card"
1303
  msgstr ""
1304
 
1305
  #: build/index.js:1
1306
+ #: includes/class-wc-gateway-stripe.php:269
1307
  #: client/blocks/credit-card/elements.js:117
1308
  msgid "Card Number"
1309
  msgstr ""
1310
 
1311
  #: build/index.js:1
1312
+ #: includes/class-wc-gateway-stripe.php:280
1313
  #: client/blocks/credit-card/elements.js:134
1314
  msgid "Expiry Date"
1315
  msgstr ""
1316
 
1317
+ #: includes/class-wc-gateway-stripe.php:288
1318
  msgid "Card Code (CVC)"
1319
  msgstr ""
1320
 
1321
+ #: includes/class-wc-gateway-stripe.php:559
1322
  msgid "This represents the fee Stripe collects for the transaction."
1323
  msgstr ""
1324
 
1325
+ #: includes/class-wc-gateway-stripe.php:560
1326
  msgid "Stripe Fee:"
1327
  msgstr ""
1328
 
1329
+ #: includes/class-wc-gateway-stripe.php:596
1330
  msgid "This represents the net total that will be credited to your Stripe bank account. This may be in the currency that is set in your Stripe account."
1331
  msgstr ""
1332
 
1333
+ #: includes/class-wc-gateway-stripe.php:597
1334
  msgid "Stripe Payout:"
1335
  msgstr ""
1336
 
1337
+ #: includes/class-wc-gateway-stripe.php:623
1338
  #: includes/class-wc-stripe-order-handler.php:153
1339
  #: includes/class-wc-stripe-webhook-handler.php:256
1340
  #: includes/compat/trait-wc-stripe-subscriptions.php:303
1343
  msgid "Sorry, we are unable to process your payment at this time. Please retry later."
1344
  msgstr ""
1345
 
1346
+ #: includes/class-wc-gateway-stripe.php:676
1347
  msgid ""
1348
  "Almost there!\n"
1349
  "\n"
1351
  msgstr ""
1352
 
1353
  #. translators: %s is the order Id
1354
+ #: includes/class-wc-gateway-stripe.php:698
1355
  msgid "Payment Intent not found for order #%s"
1356
  msgstr ""
1357
 
1358
  #. translators: 1) The error message that was received from Stripe.
1359
+ #: includes/class-wc-gateway-stripe.php:937
1360
  #: includes/class-wc-stripe-webhook-handler.php:856
1361
  #: includes/class-wc-stripe-webhook-handler.php:907
1362
  msgid "Stripe SCA authentication failed. Reason: %s"
1363
  msgstr ""
1364
 
1365
+ #: includes/class-wc-gateway-stripe.php:938
1366
  msgid "Stripe SCA authentication failed."
1367
  msgstr ""
1368
 
1369
  #. translators: %1, %2, %3, and %4 are all HTML markup tags
1370
+ #: includes/class-wc-gateway-stripe.php:1059
1371
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:1226
1372
  msgid "%1$sClear all Stripe account keys.%2$s %3$sThis will disable any connection to Stripe.%4$s"
1373
  msgstr ""
1374
 
1375
  #. translators: %1, %2 and %3 are all HTML markup tags
1376
+ #: includes/class-wc-gateway-stripe.php:1071
1377
  msgid "%1$sSet up or link an existing Stripe account.%2$s By clicking this button you agree to the %3$sTerms of Service%2$s. Or, manually enter Stripe account keys below."
1378
  msgstr ""
1379
 
1380
+ #: includes/class-wc-gateway-stripe.php:1077
1381
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:1244
1382
  msgid "Manually enter Stripe keys below."
1383
  msgstr ""
1384
 
1385
+ #: includes/class-wc-gateway-stripe.php:1138
1386
  msgid "customer bank statement"
1387
  msgstr ""
1388
 
1389
+ #: includes/class-wc-gateway-stripe.php:1141
1390
  msgid "shortened customer bank statement"
1391
  msgstr ""
1392
 
1393
  #. translators: %1 field name, %2 Number of the maximum characters allowed
1394
+ #: includes/class-wc-gateway-stripe.php:1157
1395
  msgid "The %1$s is invalid. The bank statement must contain only Latin characters, be between 5 and %2$u characters, contain at least one letter, and not contain any of the special characters: ' \" * &lt; &gt;"
1396
  msgstr ""
1397
 
1398
+ #. translators: %1$s Link to Stripe API details, %2$s Link to register a Stripe account
1399
+ #: includes/class-wc-gateway-stripe.php:1198
1400
+ msgid "Your API details can be obtained from your <a href=\"%1$s\">Stripe account</a>. Don’t have a Stripe account? <a href=\"%2$s\">Create one.</a>"
1401
+ msgstr ""
1402
+
1403
  #: includes/class-wc-stripe-api.php:150
1404
  #: includes/class-wc-stripe-api.php:184
1405
  msgid "There was a problem connecting to the Stripe API endpoint."
1639
  msgstr ""
1640
 
1641
  #: includes/class-wc-stripe-intent-controller.php:84
1642
+ #: includes/class-wc-stripe-intent-controller.php:565
1643
+ #: includes/class-wc-stripe-intent-controller.php:625
1644
  msgid "CSRF verification failed."
1645
  msgstr ""
1646
 
1665
  msgid "Failed to save payment method."
1666
  msgstr ""
1667
 
1668
+ #: includes/class-wc-stripe-intent-controller.php:455
 
 
 
 
1669
  msgid "We're not able to add this payment method. Please refresh the page and try again."
1670
  msgstr ""
1671
 
1672
+ #: includes/class-wc-stripe-intent-controller.php:521
1673
  msgid "Unable to update UPE appearance values at this time."
1674
  msgstr ""
1675
 
1676
+ #: includes/class-wc-stripe-intent-controller.php:571
1677
+ #: includes/class-wc-stripe-intent-controller.php:583
1678
+ #: includes/class-wc-stripe-intent-controller.php:643
1679
  #: includes/payment-methods/class-wc-stripe-upe-payment-gateway.php:884
1680
  msgid "We're not able to process this payment. Please try again later."
1681
  msgstr ""
1682
 
1683
  #. translators: %1: transaction ID of the payment or a translated string indicating an unknown ID.
1684
+ #: includes/class-wc-stripe-intent-controller.php:579
1685
  msgid "A payment with ID %s was used in an attempt to pay for this order. This payment intent ID does not match any payments for this order, so it was ignored and the order was not updated."
1686
  msgstr ""
1687
 
2457
  msgid "Your pre-order is now available, but payment cannot be completed automatically. %s"
2458
  msgstr ""
2459
 
2460
+ #. translators: %s is a link to the payment re-authentication URL.
2461
  #: templates/emails/failed-preorder-authentication.php:20
2462
  msgid "Authorize the payment now &raquo;"
2463
  msgstr ""
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: credit card, stripe, apple pay, payment request, google pay, sepa, sofort,
4
  Requires at least: 5.6
5
  Tested up to: 5.9
6
  Requires PHP: 7.0
7
- Stable tag: 6.1.0
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
  Attributions: thorsten-stripe
@@ -128,17 +128,9 @@ If you get stuck, you can ask for help in the Plugin Forum.
128
 
129
  == Changelog ==
130
 
131
- = 6.1.0 - 2022-01-26 =
132
- * Tweak - Use the newly exposed LoadableMask component provided by WooCommerce Blocks to trigger the loading state for Payment Request Buttons.
133
- * Fix - Response type for account summary API.
134
- * Fix - Invalid response in account summary API when missing account data.
135
- * Add - Live and test mode information in account summary API.
136
- * Add - Add filter call when updating an existent intent (wc_stripe_update_existing_intent_request).
137
- * Add - Add ability to test Stripe account keys' validity.
138
- * Fix - Fixed full bank statement field description.
139
- * Fix - Notification messages are placed on top of the account keys modal.
140
- * Fix - Express checkout with 3DS card on product page when new checkout experience is enabled.
141
- * Fix - Remove duplicate call to `payment_scripts`.
142
- * Fix - Send bank statement descriptors to payment intents.
143
 
144
  [See changelog for all versions](https://raw.githubusercontent.com/woocommerce/woocommerce-gateway-stripe/trunk/changelog.txt).
4
  Requires at least: 5.6
5
  Tested up to: 5.9
6
  Requires PHP: 7.0
7
+ Stable tag: 6.2.0
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
  Attributions: thorsten-stripe
128
 
129
  == Changelog ==
130
 
131
+ = 6.2.0 - 2022-02-17 =
132
+ * Add - Add onboarding payment gateway setup methods.
133
+ * Fix - Enable Stripe payment method after connecting account.
134
+ * Fix - Missing statement descriptor in account summary API when not set in Stripe.
 
 
 
 
 
 
 
 
135
 
136
  [See changelog for all versions](https://raw.githubusercontent.com/woocommerce/woocommerce-gateway-stripe/trunk/changelog.txt).
woocommerce-gateway-stripe.php CHANGED
@@ -5,11 +5,11 @@
5
  * Description: Take credit card payments on your store using Stripe.
6
  * Author: WooCommerce
7
  * Author URI: https://woocommerce.com/
8
- * Version: 6.1.0
9
  * Requires at least: 5.6
10
  * Tested up to: 5.9
11
  * WC requires at least: 5.7
12
- * WC tested up to: 6.1.1
13
  * Text Domain: woocommerce-gateway-stripe
14
  * Domain Path: /languages
15
  */
@@ -21,7 +21,7 @@ if ( ! defined( 'ABSPATH' ) ) {
21
  /**
22
  * Required minimums and constants
23
  */
24
- define( 'WC_STRIPE_VERSION', '6.1.0' ); // WRCS: DEFINED_VERSION.
25
  define( 'WC_STRIPE_MIN_PHP_VER', '7.0.0' );
26
  define( 'WC_STRIPE_MIN_WC_VER', '5.7' );
27
  define( 'WC_STRIPE_FUTURE_MIN_WC_VER', '5.8' );
@@ -592,7 +592,7 @@ function woocommerce_gateway_stripe() {
592
  $stripe_tokens_controller = new WC_REST_Stripe_Tokens_Controller();
593
  $oauth_init = new WC_Stripe_Connect_REST_Oauth_Init_Controller( $this->connect, $this->api );
594
  $oauth_connect = new WC_Stripe_Connect_REST_Oauth_Connect_Controller( $this->connect, $this->api );
595
- $stripe_account_controller = new WC_REST_Stripe_Account_Controller( $this->account );
596
 
597
  $connection_tokens_controller->register_routes();
598
  $locations_controller->register_routes();
5
  * Description: Take credit card payments on your store using Stripe.
6
  * Author: WooCommerce
7
  * Author URI: https://woocommerce.com/
8
+ * Version: 6.2.0
9
  * Requires at least: 5.6
10
  * Tested up to: 5.9
11
  * WC requires at least: 5.7
12
+ * WC tested up to: 6.2
13
  * Text Domain: woocommerce-gateway-stripe
14
  * Domain Path: /languages
15
  */
21
  /**
22
  * Required minimums and constants
23
  */
24
+ define( 'WC_STRIPE_VERSION', '6.2.0' ); // WRCS: DEFINED_VERSION.
25
  define( 'WC_STRIPE_MIN_PHP_VER', '7.0.0' );
26
  define( 'WC_STRIPE_MIN_WC_VER', '5.7' );
27
  define( 'WC_STRIPE_FUTURE_MIN_WC_VER', '5.8' );
592
  $stripe_tokens_controller = new WC_REST_Stripe_Tokens_Controller();
593
  $oauth_init = new WC_Stripe_Connect_REST_Oauth_Init_Controller( $this->connect, $this->api );
594
  $oauth_connect = new WC_Stripe_Connect_REST_Oauth_Connect_Controller( $this->connect, $this->api );
595
+ $stripe_account_controller = new WC_REST_Stripe_Account_Controller( $this->get_main_stripe_gateway(), $this->account );
596
 
597
  $connection_tokens_controller->register_routes();
598
  $locations_controller->register_routes();