課金

トランザクショントークンを作成して顧客の決済情報を収集した後、決済を完了するために課金(Charge)を作成します。

課金(Charge)は、非同期処理されるので、作成時には、pending状態になっています。決済処理の完了後、ステータスは、結果に応じてsuccessful, failed, errorに変更されます。
※海外カード会社に接続している場合は作成時authorized状態になります。

ウェブフックCHARGE_FINISHEDイベントを登録することで課金(Charge)の最終的な状態を得ることができます。
ロングポーリングを行って課金の状態を取得することもできますが、最終的な状態を返すことは保証できません。

オーソリ

オーソリ(Authorization)は、支払い方法がクレジットカードの時に利用でき、そのクレジットカードが実際に利用可能かどうかを確認し、与信枠の確保を行います。この状態だと実際の売り上げにはなりません。
その後、キャプチャを行うことで決済を確定します。

オーソリを行うには、課金の作成時に capture パラメータを false に指定して課金を作成します。
この際に、 capture_at パラメータで自動的にキャプチャを行う日時を指定することもできます。

ステータス

  • pending:課金が作成された時の状態
  • authorized:カード会社により承認された状態
  • failed:オーソリは有効期限切れや与信枠の不足など、様々な理由により失敗した状態
  • error :タイムアウト、通信エラー、入力形式違反、接続先からのレスポンスが無いなど、様々な理由により失敗した状態

キャプチャを行うには、authorized 状態の課金に対してキャプチャのリクエストを送信します。詳細は課金のキャプチャの作成を参照してください。

キャプチャを行わない場合は、キャンセルして与信枠を解放する必要があります。

テストカード

テストモードのアプリケーショントークンで課金(Charge)を行う場合には、成功または失敗を意図的に発生させるための特別なテスト用のカード番号があります。

  • 4000020000000000:課金(Charge)、返金(Refund)ともに成功
  • 1111で終わるカード番号(4111111111111111など):課金(Charge)失敗
  • 4242で終わるカード番号(4242424242424242など):課金(Charge)は成功、返金(Refund)が失敗
  • 1881で終わるカード番号(4012888888881881など):課金(Charge)は成功、取り消し(Cancel)が失敗

その他の番号もカード発行ロジックに沿ったものであれば課金(Charge)も返金(Refund)も成功します。このようなサイトで、ランダムなテスト用カード番号を生成することができます

課金オブジェクト

Fields
idstring (UUID)
課金のユニークID
store_idstring (UUID)
課金(Charge)が行われたストアのユニークID
transaction_token_idstring (UUID)
課金(Charge)を実行するために使用されるトークンのユニークID
transaction_token_typestring
transaction_token_id のトランザクショントークンの種別。
subscription_idstring (UUID)
この課金(Charge)が作成された定期課金(Subscription)のユニークID。定期課金(Subscription)がなければnullです。
merchant_transaction_idstring
課金を作成した支払先の決済事業者に送る取引IDです。
Wechat,Wechat Online,Wechat MPMで有効です。
requested_amountnumber
リクエストされた課金金額
requested_currencystring (ISO-4217)
リクエストされた課金通貨
requested_amount_formattedstring
補助単位があれば、その小数の値を含む課金のリクエスト金額
charged_amountnumber
課金(Charge)された金額。
リクエストされた金額とは異なる場合があります。通貨の変換について
charged_currencystring (ISO-4217)
課金(Charge)された通貨。
リクエストされた通貨とは異なる場合があります。通貨の変換について
charged_amount_formattedstring
補助単位があれば、小数の値を含む課金された金額
only_direct_currencyboolean
リクエストされた通貨をサポートするゲートウェイのみを使用すべきかどうか
capture_atstring (ISO-8601)
自動的にキャプチャされる日時
descriptorstring
請求名
statusstring
課金ステータス
pending, awaiting, successful, failed, error, authorized, canceled のいずれか。
error は異常な状態を表し、サポートチームが課金のレビューを行った後に、ステータスが変更されることがあります
error.codestring
課金が失敗またはエラーになった理由を表すエラーコード
error.messagestring
課金が失敗した理由
error.detailstring
課金が失敗した詳細理由
metadatajson
課金(Charge)に紐づいているメタデータ
定期課金(Subscription)で作成されたメタデータはそれに関連する課金に引き継がれます
modestring
liveまたはtest
created_onstring (ISO-8601)
課金が作成された日時
redirect.redirect_idstring (UUID)
リダイレクトリクエストのユニークID
redirect.endpointstring (URL)
支払い完了後にリダイレクトするURL