13

私はspree1-2-stableを使用しており、spree-paypap-express 1-2-stableブランチを使用しています(マスターでも試行しましたが、再度失敗しました)。注文をチェックアウトして支払い方法としてPayPalExpressを選択しようとすると、「ゲートウェイエラー:翻訳がありません:en.the_totals_of_the_cart_item_amounts_do_not_match_order_amounts」というエラーで失敗します。何らかの理由で、注文の合計がカートアイテムの金額と一致しません。私は週末全体をこれに費やしましたが、なぜこれが起こっているのかまだわかりません。

この問題は、価格が0より大きい送料を含める場合にのみ発生します(送料を0に設定すると機能します)。送料を0より大きい値または数%に変更するとすぐに壊れます。私は「VATを含む出荷」の真と偽の両方で試しました-同じことです。

何か案は?これはppxのバグですか、それとも何かが足りませんか?


更新:12/12/12

問題を再現するために使用している値は次のとおりです。VATを使用しています(価格に含まれています-25%)、購入しようとしているアイテムの価格は265 EUR(通貨は関係ありません)、アイテム数量は1で、送料は15EURです(ここでも付加価値税は送料に含まれています)。これは一律の注文税です。

注文の合計がアイテムの合計金額と一致しないというエラーが表示されます。いくつかのデバッグの後、PayPalに送信する前に実際にそれらが異なることに気づきました。

合計が間違って計算されるのはなぜですか?スプリーの1-2安定ブランチを使用しています。私のgemfile:

gem'spree'、:git =>'git://github.com/spree/spree.git'、:branch => '1-2-stable'
#gem'spree_usa_epay'
#gem'spree_skrill'
gem'spree_auth_devise'、:github =>'spree / spree_auth_devise'、:branch => '1-2-stable'
gem'spree_paypal_express'、:github =>'spree / spree_paypal_express'、:branch => '1-2-stable'

私の本当の質問は、支払いステップの直前(配達ステップの後)に送料と税金を再計算する方法と、計算機をオーバーライドして正しく計算する方法です。

4

1 に答える 1

12

たくさんのデバッグを行った後、spree_paypal_expressgemにいくつかのバグが見つかりました。

  1. 税金がマイナスの場合(VATは価格に含まれており、EU以外の注文の場合は返金されます)、PayPalは無効な税金のために注文を拒否します
  2. spree_paypal_expressの配送方法がハードコーディングされていることが判明しました。顧客が選択したものではなく、常にDBに最初に挿入されたものを取得します(このバグは、複数の配送オプションがある場合に発生します)

これらの問題が組み合わさると、チェックアウトの問題が発生していました。

最初の問題opts[:tax] = 0では、税金がマイナスの場合に設定し、2番目に実装されたロジックでは、ハードコードされた方法ではなく、選択した配送方法(対応する価格)を取得します。

于 2012-12-14T01:04:46.133 に答える