EC-Orangeにソニーペイメントのコンビニ決済を導入したら、入金結果通知機能に不具合があったお話

「ECサイトとは?」から始めるECサイト初心者向けECサイト構築入門 EC-CUBEカスタマイズ
この記事は約2分で読めます。
株式会社サンクユーはEC-CUBEに強い制作会社で、EC-CUBE構築EC-CUBEカスタマイズが得意なEC-CUBEインテグレートパートナーです。
本コラムではEC-CUBEカスタマイズ事例やEC-CUBEに関する情報を発信しています。
今回のテーマは『EC-Orangeにソニーペイメントのコンビニ決済を導入したら、入金結果通知機能に不具合があったお話』です。

ECオレンジにソニーペイメントのコンビニ決済を導入

EC-Orangeで構築されたECサイトにソニーペイメントのコンビニ決済を導入しました。

元々、EC-Orangeにソニーペイメントのプラグインがインストールされているので、通常はプラグインをそのまま利用すればよいのですが、そのECサイト様は特殊なカスタマイズをしているので、独自で開発する必要がありました。

ただ、入金結果通知のプログラムはモジュールをそのまま使用すればよいので一切手を加えませんでした。
入金結果通知とは、ユーザ様がコンビニで入金した際に、ECサイト側に入金した旨の通知が届く機能のことです。
ECサイト側は入金通知を受け取った際に受注ステータスを「入金済み」に自動で変更します。

入金結果通知でエラーが発生

で、実勢にテストを実施してみると、入金結果通知でエラーになります。
よくよく調べてみると、仕様書の内容とプラグインの仕様と実際に送られてくるデータ内容に相違がありました。

仕様書の内容

ソニーペイメントの仕様書を確認したところ、パラメータ「CvsCd(収納期間コード)」は半角英数字記号となっている。
また、収納機関コード一覧の内容には半角スペースの記載がない。

実際に送られてくるデータ

[“CvsCd”]=>
string(5) “LSN “

ローソンで入金したので”LSN “となっています。
後ろ2バイトにスペース。

入金結果通知プログラムの仕様

収納機関コード「LSN」の後に半角スペースが二つ入っている為、モジュールの入力チェックエラーに引っかかる。

正直「なんじゃこれ?」です。

これってテストしてないってことじゃないのかな?
それとも、ソニーペイメント側の仕様が変更されたのに、入金結果通知プログラムがそのまま放置されてたったことなのか?

対策

EC-Orangeに元々あった入金結果通知プログラムをどこが開発したかは不明ですが、ソニーペイメント側で対応して貰えるはずもなく、弊社で修正致しました。

タイトルとURLをコピーしました