POST
/
api
/
v1
/
server-to-server-interface
/
payment
curl --request POST \
  --url https://api-dev.paymentoptions.com/api/v1/api/v1/server-to-server-interface/payment \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
  "amount": "1000",
  "currency": "JPY",
  "card": {
    "cvc": "100",
    "expiry_month": "12",
    "expiry_year": "24",
    "name": "John Doe",
    "number": "4000000000001091"
  },
  "payment_method": {
    "type": "scheme",
    "store_payment_method": true
  },
  "merchant_txn_ref": "qwe",
  "customer_ip": "127.0.0.1",
  "merchant_id": "< Merchant ID >",
  "return_url": {
    "webhook_url": "< Webhook url >",
    "success_url": "http://www.successurl.com/",
    "decline_url": "http://www.declineurl.com/"
  },
  "billing_address": {
    "country": "JP",
    "email": "billing@testemail.com",
    "phone_number": "8112345678",
    "address1": "1-2-3 Shinjuku",
    "city": "Shinjuku-ku",
    "state": "Tokyo",
    "postal_code": "1600022"
  },
  "shipping_address": {
    "country": "JP",
    "email": "shipping@testemail.com",
    "phone_number": "8112345678",
    "address1": "1-2-3 Shinjuku",
    "city": "Shinjuku-ku",
    "state": "Tokyo",
    "postal_code": "1600022"
  },
  "time_zone": "Asia/Kuala_Lumpur"
}'
{
  "success": true,
  "status_code": 201,
  "is_live": false,
  "transaction_type": "CAPTURE",
  "gateway_response": {
    "version": "1",
    "type": "INFO",
    "message": "Payment Successful.",
    "code": "INFO0000"
  },
  "merchant_details": {
    "legal_name": "アイベック株式会社",
    "mid": "< Merchant ID >",
    "merchant_txn_ref": "qwe",
    "billing_details": {
      "billing_address": {
        "country": "JP",
        "email": "billing@testemail.com",
        "phone_number": "8112345678",
        "address1": "1-2-3 Shinjuku",
        "city": "Shinjuku-ku",
        "state": "Tokyo",
        "postal_code": "1600022"
      }
    },
    "device_details": {
      "visited_ip": "127.0.0.1",
      "customer_ip": "127.0.0.1"
    }
  },
  "payment_details": {
    "amount": 1000,
    "response_code": 0,
    "auth_code": "268004",
    "currency": "JPY",
    "payment_method": "ECMC-SSL",
    "scheme": "MASTERCARD",
    "card": {
      "name": "John Doe",
      "number": "4000000000001091",
      "exp_month": "12",
      "exp_year": "24"
    },
    "additional_data": {
      "payment_data_source": {
        "type": "card"
      }
    }
  },
  "transaction_details": {
    "id": "fc565b43-26f5-4906-92ae-d849edc3c3a1",
    "ref": 74811,
    "timestamp": "2024-11-25T08:24:36.000Z",
    "merchant_txn_ref": "qwe",
    "stored_payment_method_id": "094db781-fabc-4c6d-8fcd-18bee06a527a"
  },
  "risk-details": {
    "risk_score": null
  }
}

重要なポイント

  • カードをトークン化することで、カード詳細を再入力することなく繰り返し取引を行うことができ、セキュリティとユーザー体験の向上が図れます。

  • 生成されたトークンは、購入と認証の両方の取引で使用でき、さまざまな支払いタイプに対応する柔軟性を提供します。

  • 重要なパラメータには通常、カード番号、有効期限、CVV、顧客情報が含まれます。

フローダイアグラム

ノート

store_payment_method: 将来の使用のためにカードトークンを保存するには、ペイロードで true に設定する必要があります。

リクエスト例
{
  "payment_method": {
    "type": "scheme",
    "store_payment_method": true
  }

store_payment_methodtrue に設定することで、カード詳細を再入力することなく、カードトークンが今後の取引のために保存されます。

レスポンス例
{
  "transaction_details": {
    "id": "<transaction_id>",
    "ref": <ref>,
    "timestamp": "yyyy-mm-ddThh:mm:ss.000Z",
    "merchant_txn_ref": "<string>",
    "stored_payment_method_id": "094db781-fabc-4c6d-8fcd-18bee06a527a"
  }
}

stored_payment_method_id は、カード詳細を再入力することなく、今後の取引でカードトークンAPIを使用するために利用できます。

APIパラメータ

Authorizations

Authorization
string
header
required

認証のためのAPIキー。フォーマット: 'Basic YOUR_API_KEY_HERE'

x-api-key
string
header
required

x-api-key専用のAPIキー。

Body

application/json
決済取引を処理するためのリクエストペイロード。
amount
string
required

取引の金額。

Example:

"1000"

currency
string
required

処理通貨の略語(例: JPY)。

Maximum length: 3
Example:

"JPY"

card
object
required

カードの詳細を含むJSONオブジェクト。

payment_method
object
required

決済方法を含むJSONオブジェクト。

merchant_id
string
required

加盟店ID(DASMID)。

Maximum length: 128
Example:

"< Merchant ID >"

billing_address
object
required

カード所有者の請求先住所を含むJSONオブジェクト。

merchant_txn_ref
string

加盟店取引参照ID。

Maximum length: 45
Example:

"qwe"

customer_ip
string

カード所有者のIPアドレス。

Maximum length: 45
Example:

"127.0.0.1"

return_url
object

リターンURLを含むJSONオブジェクト。(このフィールドは3DS取引に必須)。

shipping_address
object

カード所有者の配送先住所を含むJSONオブジェクト(オプション)。

time_zone
string

取引の国のタイムゾーン。

Maximum length: 128
Example:

"Asia/Kuala_Lumpur"

Response

201 - application/json
支払いが正常に処理されました。
success
boolean

取引が成功した場合はtrue、失敗した場合はfalse。

Example:

true

status_code
integer

取引のステータスコード。

Example:

201

is_live
boolean

本番環境の取引の場合はtrue、テスト取引の場合はfalse。

Example:

false

transaction_type
string

取引の種類(例:CAPTURE)。

Example:

"CAPTURE"

gateway_response
object

ゲートウェイからのレスポンスを含むJSONオブジェクト。

merchant_details
object

加盟店の詳細情報を含むJSONオブジェクト。

payment_details
object

支払いの詳細情報を含むJSONオブジェクト。

transaction_details
object

取引の詳細を含むJSONオブジェクト。

risk-details
object

リスクの詳細を含むJSONオブジェクト。