ActiveMerchant:void操作をサポートしないゲートウェイを使用する場合、カードを認証する方法は?
-
19-08-2019 - |
質問
ActiveMerchantを使用して、Ruby on Railsアプリケーションの請求コンポーネントに取り組んでいます。選択した支払いゲートウェイは PaymentExpress です。
以下のようなコード例は、authorize()
とvoid()
を使用してカードの有効性をテストします:
def test_card!
auth_response = gateway.authorize(100, card)
gateway.void(auth_response.authorization) if auth_response.success?
raise AuthorizationFailed.new(auth_response) unless auth_response.success?
end
ただし、PaymentExpressはvoidアクションをサポートしていません。この認証アクションを実行する別の方法はありますか、PaymentExpressなどのゲートウェイが7日後に認証リクエストを期限切れにすることを考慮して、無効なアクションを省略してもよいですか?
文書またはGoogleでvoid
承認について言及することも、それがどれほど重要であるかの兆候を見つけることもできません。
いくつかのヘルプ?
解決 2
少なくともPaymentExpressでは、カード保存プロセスの一部として自動的に承認アクションを実行することがわかりました。認証に失敗した場合、カードは保存されず、<!> quot; INVALID CARD <!> quot;が返されます。代わりに。これは、トランザクション検索Webアプリで見られます。カードを保存すると、$ 1.00がカードで承認され、1週間後に自動的に無効になります。
他のヒント
一部のカードプロセッサは、このようなトランザクションを潜在的な不正行為としてフラグを立てます。彼らは、小さなテストトランザクションの後に大きなトランザクションが続くことを好まない。特にAmerican Expressは、戻って実際の金額を試す際に取引を拒否する傾向があるため、この点でやや積極的です。
顧客に金額x
を請求する予定がある場合は、金額<=>を承認してカードを検証する必要があります。その後、以前の承認を使用して、キャプチャまたは強制投稿を実行して請求を確定できます。このように、顧客には、保留中の<!> amp;彼らの声明に落ち着きました。