バージョン選択

フォーラム

メニュー

オンライン状況

57 人のユーザが現在オンラインです。 (48 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 57
もっと...

サイト内検索

プラグイン > バグ報告・利用に関する質問 > [PGマルチペイメントサービス決済プラグイン] リンク式決済完了時のEC-CUBE側エラー

バグ報告・利用に関する質問

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
tacky14
投稿日時: 2021/4/23 12:17
対応状況: −−−
半人前
登録日: 2021/4/23
居住地:
投稿: 16
[PGマルチペイメントサービス決済プラグイン] リンク式決済完了時のEC-CUBE側エラー
-------------------------------------------------
EC-CUBE 4.0.5(新規インストール)
サーバーOS Linux
DBサーバー MySQL 5.7.34
WEBサーバー Apache/2.4.25 (Debian)
PHP 7.3.27

ブラウザ Chrome90
プラグイン PGマルチペイメントサービス決済プラグイン 1.0.9

カスタマイズなし

-------------------------------------------------

[現象]

EC-CUBE4でPGマルチペイメントサービス決済プラグインを利用しています。

楽天ペイ決済などのリンク式決済利用時、決済用外部サイトからEC-CUBEサイトに戻った際にEC-CUBEで保持しているSession情報がなくなってしまい決済エラーとなります。


具体的には、外部サイトからEC-CUBE側に再度遷移した際に
/Plugin/GmoPaymentGateway4/Controller/ReceiveController.php #624

$Order = $this->getPendingOrder($this->cartService->getPreOrderId(), [
            OrderStatus::NEW,
        ]);

$this->cartService->getPreOrderId() の返り値がNULLとなっています。
更に処理を追うと、
Eccube/Service/CartService.php #134
getCarts()

if ($this->getUser()) {
            $this->carts = $this->getPersistedCarts();
        } else {
            $this->carts = $this->getSessionCarts();
        }
return $this->carts;

ここでSessionからカート情報を取得できず、空が返っているためのようでした。



[試したこと]

下記条件で注文処理を行いましたが、非会員のリンク式決済のみ上記のエラーがおきています。

ログイン済み
├ クレジット決済 [成功]
└ 楽天ペイ [成功]

非会員のまま
├ クレジット決済 [成功]
└ 楽天ペイ [失敗]


また、Chrome90ではこの事象が起きますが
FireFox88.0では非会員でも決済完了まで問題なく進みました。

ChromeのバージョンアップによりCookie送信ができない事象が以前にあったようなので(SameSite Cookie 対応)、そちらも疑いましたが
EC-CUBE4.0.4時点で対応済みとのこと、
/Eccube/Session/Storage/Handler/SameSiteNoneCompatSessionHandler.php もあるため影響はないものと考えていますが、
起きている事象がこのCookie仕様の事象と類似するため、こちらのミスで同じ不具合を起こしてしまっている可能性はありそうです。



事象について知見等ございましたら、解決方法や糸口になるようなものなど、ご教授いただければ幸いです。
umebius
投稿日時: 2021/4/24 3:46
対応状況: −−−
登録日: 2016/7/22
居住地:
投稿: 2085
Re: [PGマルチペイメントサービス決済プラグイン] リンク式決済完了時のEC-CUBE側エラー
デベロッパーツールでCookieのSameSite属性を確認してみるとeccubeという名前のクッキーはSameSite=None Secureになっていますか?

クッキー確認方法
https://qiita.com/pipi0813/items/93e60c605f89f93e49fb
https://www.atmarkit.co.jp/ait/articles/2002/19/news021.html


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

tacky14
投稿日時: 2021/4/26 12:40
対応状況: −−−
半人前
登録日: 2021/4/23
居住地:
投稿: 16
Re: [PGマルチペイメントサービス決済プラグイン] リンク式決済完了時のEC-CUBE側エラー
umebius 様
ご返信いただき誠にありがとうございます。

引用:
デベロッパーツールでCookieのSameSite属性を確認してみるとeccubeという名前のクッキーはSameSite=None Secureになっていますか?

たしかに、SameSite、Secureとも未設定となっておりました。
開発ツール上で、SameSite=None、Secure=trueの設定をしてPOST送信したところ問題なく注文完了画面まで遷移ができました。
大変助かりました。ありがとうございます!

ついでの質問で大変恐縮なのですが
SameSite対応済みのECCUBEバージョンであっても、ユーザー環境によってはSameSite=Noneを明示してあげる必要があるのでしょうか?
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,281名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.