トランザクショントークン: Create
このリクエストでは、課金や定期課金に必要なトランザクショントークンを作成することができます。
このルートではアプリケーショントークンのシークレットは必須です。アプリトークンと合わせて指定してください。選択する支払い手段によって必要な情報が異なります。
トランザクショントークンを作成した後はトランザクショントークンIDを指定して課金・定期課金を行ってください。
Request
POST https://api.univapay.com/tokens
Parameters:
Parameters | |
payment_type | string [必須] 支払い手段を参照 |
type | string トークンの種類を参照。特定の支払い手段により、種類が制限される場合があります。 繰り返しに設定されていて、アカウントに無限に課金可能なトークンを作成する権限がない場合は、 usage_limit パラメーターを指定する必要があります。 |
usage_limit | string このトークンがリカーリングトークンの場合に使用できる頻度。 無限に課金可能なリカーリングトークンを作成する権限がある場合、これは空白のままにすることができます。 |
string [必須] メールアドレス ※オンライン決済は任意 | |
ip_address | string ユーザーのデバイスのIPv4アドレス 以下の決済先では、このパラメータが必須 – we_chat_online (web , http_get ) |
metadata | object メタデータを参照 |
metadata.univapay-reference-id | string (フリーフォーマット) 任意の値 |
metadata.univapay-customer-id | string (UUID) 顧客ID |
data | object [必須] 支払い手段ごとに必要な情報が異なりますので、下記記載箇所よりそれぞれ詳細のパラメータをご確認ください card : カードデータ, apple_pay : Apple payデータ, qr_scan : QRスキャンデータ, konbini: コンビニ払いデータ, online : オンライン払いデータ |
カードデータ
Parameters | |
data.cardholder | string [必須] クレジットカードの所有者の名前 |
data.card_number | string [必須] カード番号 |
data.exp_month | string [必須] 有効期限(月) |
data.exp_year | string [必須] 有効期限(年) |
data.cvv | string [必須] CVV値 |
data.line1 | string 住所1 |
data.line2 | string 住所2 |
data.state | string 住所の州/地域/都道府県 |
data.city | string 住所の市町村区 |
data.country | string 国 (ISO 3166-1形式のアルファベット2文字の国コード) |
data.zip | string 郵便番号 |
data.phone_number.country_code | string 電話番号の国コード |
data.phone_number.local_number | string 電話番号 |
cvv_authorize.enabled | boolean セキュリティコード認証機能が有効かどうか。デフォルトはfalse |
cvv_authorize.currency | string (ISO-4217) 認証を行う通貨。デフォルトは加盟店の基本通貨 |
Apple Payデータ
Parameters | |
data.applepay_token | string [必須] Apple Payトークン |
data.cardholder | string [必須] カード所有者の名前 |
data.line1 | string 住所1 |
data.line2 | string 住所2 |
data.state | string 住所の州/地域/都道府県 |
data.city | string 住所の市町村区 |
data.country | string 国 (ISO 3166-1形式のアルファベット2文字の国コード) |
data.zip | string 郵便番号 |
data.phone_number.country_code | string 電話番号の国コード |
data.phone_number.local_number | string 電話番号 |
QR CPM データ
Parameters | |
data.scanned_qr | string [必須] ユーザーのウォレットアプリからスキャンしたQRコード |
QR MPM データ
MPM方式で課金を行う場合は課金の際にQRコードコンテンツを取得するためのリクエストを送る必要があります。詳しくはこちらをご覧ください。
Parameters | |
data.brand | string [必須] 使用する決済ブランドです。有効な値は以下の通りです: – alipay_merchant_qr Alipay China– alipay_connect_mpm Alipay+– pay_pay_merchant Pay Pay– we_chat_ mpm WeChat Pay |
コンビニ払いデータ
Parameters | |
data.customer_name | string [必須] ユーザー名 |
data.phone_number.country_code | string [必須] 電話番号の国コード。日本の番号のみ可能 |
data.phone_number.local_number | string [必須] ユーザーの電話番号 |
data.convenience_store | string [必須] ユーザーが支払いを選択したコンビニエンスストア。利用可能な値は、 seven_eleven , family_mart , lawson , mini_stop , seico_mart , pay_easy , circle_k , sunkus , daily_yamazaki , yamazaki_daily_store |
data.expiration_period | string (ISO-8601 Duration) 支払いの有効期限。 作成日から最短30分、最大59日、提供されていない場合はデフォルトで30日。例: P7D ※課金:Createで支払い期限日時を指定した場合はそちらを優先します。 |
オンライン払いデータ
オンライン払いを選択した場合、課金を作成後、QR事業者側の支払い画面を呼び出すためのURLが必要になるため、イシュアトークンを取得するリクエストを別途送る必要があります。詳しくはこちらをご覧ください。
Parameters | |
data.brand | string [必須] 使用する支払いゲートウェイ。 有効な値は - - alipay_plus_online Alipay+ |
data.call_method | string [必須] クライアントが要求した実行方法です。 http_get , http_post , sdk , web , app のいずれかです。– sdk は、ペイメントプロバイダーが提供するSDKで直接使用することを意味します。– web とは、特定のAPIを拡張した特殊なブラウザ環境で直接使用することを指します。– app とは、ペイメントプロバイダーが提供するSDKのネイティブアプリ環境での利用を指します。– http_get またはhttp_post を使用すると、issuer_token を新しいブラウザウィンドウまたは適切な対応するHTTPメソッドのiframe内で直接実行することができます。以下のブランドでは、以下の呼び出し方法に対応しています。 – alipay_online: http_get , sdk (miniapp), app – alipay_plus_online: http_get , http_get_mobile , sdk (miniapp), app – pay_pay_online: http_post – we_chat_online: http_get (H5), sdk (miniapp), app (in-app), web (official account) |
data.user_identifier | string [条件付き] 通常、ペイメントゲートウェイアプリケーションによって提供される、ユーザーデバイスを一意に識別することができるユーザー固有の識別子。これは、不正行為を防止するために、一部の決済事業者が要求しているものです。 これらのコールメソッドの以下のブランドでは、ユーザー識別子の提供が必要です。 – we_chat_online : sdk (miniapp), web (official account) |
data.os_type | string [条件付き] 使っているモバイルデバイスのOSです。有効な値は – android – ios これらのコールメソッドの以下のブランドでは、提供が必要です。 – alipay_plus_online : http_get_mobile , app |
銀行振込支払データ
Parameters | |
data.brand | string [必須] 使用する支払いゲートウェイ。 有効な値: - aozora_bank GMOあおぞらネット銀行 |
data.match_amount | string 送金額に対するマッチングのアルゴリズムです。お客様のストア/マーチャント設定より優先されます。 以下のいずれかの値: – disabled : 送金額のマッチングを無効にする– exact : 送金された金額が一致する必要があります– exact : 送金額が一致しない場合は、銀行により送金が拒否されます– minimum : 送金額は、送金依頼額以上でなければなりません。そうでない場合、送金は銀行によって拒否されます– maximum : 送金額は依頼額以下でなければならず、そうでない場合は銀行によって送金が拒否されます |
Headers:
Authorization: Bearer {secret}.{jwt}
Content-Type: application/json
Body:
curl --request POST \
--url https://api.univapay.com/tokens \
--header 'Authorization: Bearer {secret}.{jwt}
' \
--header 'Content-type: application/json' \
--data "{
\"payment_type\": \"card\",
\"subscription\": false,
\"email\": \"taro.momo@univapay.com\",
\"data\": {
\"cardholder\": \"TARO MOMO\",
\"card_number\": \"4916741415383284\",
\"exp_month\": \"12\",
\"exp_year\": \"2018\",
\"cvv\": \"999\",
\"line1\": \"123 abc st\",
\"line2\": \"apt 123\",
\"state\": \"OR\",
\"city\": \"Portland\",
\"country\": \"US\",
\"zip\": \"12345\",
\"phone_number\": {
\"country_code\": \"1\",
\"local_number\": \"8029854583\"
},
\"cvv_authorize\": {
\"enabled\": true,
\"currency\": \"JPY\"
}
}
}"
Response
Code: 201
Headers:
Content-Type: application/json
Body:
{
"id": "1c94ed2e-1841-11e7-a481-a393b47973f4",
"store_id": "af857264-180c-11e7-9be2-276aea4fed28",
"email": "taro.momo@univapay.com",
"payment_type": "card",
"mode": "test",
"type": "one_time",
"metadata": {},
"created_on": 1491205358955,
"last_used_on": null,
"data": {
"card": {
"cardholder": "TARO MOMO",
"exp_month": 12,
"exp_year": 2018,
"last_four": "3284",
"brand": "visa",
"country": "BR",
"category": "classic",
"issuer": "BANCO SANTANDER BRASIL, S.A.",
"sub_brand": "none"
},
"billing": {
"line1": "123 abc st",
"line2": "apt 123",
"state": "OR",
"city": "Portland",
"country": "US",
"zip": "12345",
"phone_number": {
"country_code": 1,
"local_number": "8029854583"
}
},
"cvv_authorize": {
"enabled": true,
"status": "current",
"currency": "JPY",
"charge_id": "8fb15bae-119b-4e57-8504-ae7230c68139",
"credentials_id": "e093d719-0c07-4597-b14b-c4a504832aca"
}
}
}