決済取引
はじめに
APIリクエストはアクセストークンを使用して認証されます。有効なアクセストークンを含まないリクエストはすべてエラーを返します。詳しくは認証をご覧ください。
ベースURL
- UAT:
https://transactions.transactional.uat.unico.app/api/public/v1 - 本番:
https://transactions.transactional.unico.app/api/public/v1
取引の作成
POST /credit/transaction — 新しい取引を作成します。
危険
コンバージョンを高めるため、事前認証やカード非提示認証体験の前に取引を完了させてしまう可能性のある検証は、すべて完了させた後にのみ取引を作成してください。
危険
orderNumberフィールドには、そのeコマースシステムにおける購入の一意の注文番号を入力する必要があります — 別の取引IDを使用するのは誤りです。これを使い回すと、コンバージョンの低下(注文番号はエンドユーザーがフローを完了する助けとなります)や、同じ注文番号・CPF・BIN・下4桁を使用した場合のreplicated transactionのようなAPIエラーの原因となる可能性があります。
ヘッダー
| ヘッダー | 値 |
|---|---|
Authorization | Bearer {token} — 有効なアクセストークン。 |
ボディ
{
"identity": { "key": "cpf", "value": "12345678900" },
"orderNumber": "order-98765",
"company": "company-id",
"redirectUrl": "https://yourapp.com/checkout/return",
"card": {
"binDigits": "12345678",
"lastDigits": "1234",
"expirationDate": "12/2028",
"name": "John Doe"
},
"value": 199.90,
"mainContacts": [
{ "key": "phone", "value": "5543999999999" }
],
"additionalInfo": {
"externalUserID": "YOUR_EXTERNAL_USER_ID"
}
}
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
identity | object | yes | ユーザー識別データ。 |
identity.key | string | yes | ユーザー識別キーのタイプ。cpfを推奨します — コンバージョン率が高くなります。 |
identity.value | string | yes | ユーザー識別キーの値。ドットやハイフンを含めないこと。 |
orderNumber | string | yes | 取引に関連付けられた注文番号。ポータル内のインデックスとして、また貴社のシステムとカード非提示認証間の外部キーとして使用されます。 |
company | string | yes | Unicoから提供される、取引を担当する会社のID。 |
redirectUrl | string | no | 取引完了後にユーザーをリダイレクトするURL(WebではHTTPSのURL、ネイティブモバイルアプリではURLスキーム)。 |
card | object | yes | 取引で使用されるカードに関する情報。 |
card.binDigits | string | yes | カードの最初の8桁。 |
card.lastDigits | string | yes | カー ドの下4桁。 |
card.expirationDate | string | no | カードの有効期限。 |
card.name | string | yes | カード名義人の氏名。ユーザー体験やコミュニケーションで使用されるため、エンコーディングの問題を避け、正しく送信してください。 |
value | number | yes | 購入の合計金額。 |
mainContacts | array | no | カード非提示認証が通知を担当する場合に、ユーザーへの通知に使用される主な連絡先(メールおよび/または電話)のリスト。 |
fallbackContacts | array | no | 主な連絡先への通知試行が失敗した場合にトリガーされる、代替連絡先のリスト。 |
additionalInfo | object | no | この取引でサイレント認証を有効にするには、externalUserIDを含むこのオブジェクトを送信してください。 |
additionalInfo.externalUserID | string | yes(additionalInfoを送信する場合) | デバイスメタデータの収集時にSDKのexternalUserIdで設定したものと同じ識別子。サイレント検証をトリガーするために必須です — これを指定しない場合、取引は通常どおり作成されますが、常に標準の画面表示フローに従います。 |
200 OK
{
"id": "6ab1771e-dfab-4e47-8316-2452268e5481",
"status": "processing",
"link": "https://developers/regional-solutions/card-not-present-verification.unico.app/t/6ab1771e-dfab-4e47-8316-2452268e5481",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"expiresAt": "2026-07-22T15:30:00Z"
}
| フィールド | 説明 |
|---|---|
id | 作成された取引のID。 |
status | 取引の現在のステータス。 |
link | 取引に関連するリンク。 |
token | カード非提示認証 Web SDKを初期化するために必要なパラメーターを含む署名済みトークン。 |
expiresAt | 取引の有効期限日時、ISO 8601(UTC)。 |
警告
生体キャプチャが不要であると検証が判断した場合、レスポンスは異なるステータスとなり、キャプチャリンクは生成されません。
{
"id": "6ab1771e-dfab-4e47-8316-2452268e5481",
"status": "fast-inconclusive"
}
これは、チェックアウトでPreまたはSuper Preモジュールを使用している場合に発生します。詳しくは機能をご覧ください。
メモ
additionalInfo.externalUserIDが送信され、取引がサイレントに承認された場合、レスポンスでもキャプチャリンクは省略されます。
{
"id": "6ab1771e-dfab-4e47-8316-2452268e5481",
"status": "approved"
}
SDKの設定やタイミング要件を含む完全なフローについては、サイレント認証をご覧ください。
エラーレスポンスについては、エラー — 取引の作成をご覧ください。