不審請求の書類をアップロード
不審請求への対応をサポートする証拠書類をアップロードします。書類はカード発行会社に証拠を提供することで、あなたのケースを強化します。
リクエストパラメータ
必須 - 2 項目必須パラメータ
`id`STRING(required)
不審請求ID(パスパラメータ)。不審請求のステータスが「open」である必要があります。
`file`FILE(required)
アップロードする証拠書類ファイル。受け付ける形式: PNG、JPG、PDF。
追加 - 1 項目追加パラメータ
レスポンス
200
アップロード成功書類が正常にアップロードされ、不審請求に添付されました。
レスポンスに含まれる項目:
object- 常に "document"id- 書類ID (docu_*)livemode- 本番モードの書類かどうかlocation- 書類を取得するためのAPIパスdeleted- 書類が削除されたかどうか(false)filename- 元のファイル名kind- 書類の種類(指定されている場合)download_uri- 書類をダウンロードするためのURLcreated_at- アップロード日時
400
不正なリクエストリクエストの検証に失敗しました。エラーメッセージで詳細を確認してください。
一般的な原因:
- ファイルがないまたは空
- ファイル形式が無効(PNG、JPG、PDF以外)
- kindパラメータの値が無効
401
認証エラー認証に失敗しました。APIキーが無効または見つかりません。
一般的な原因:
- Authorizationヘッダーがない
- シークレットキーが無効
- シークレットキーではなくパブリックキーを使用している
- HTTP Basic Auth形式が正しくない
404
見つかりません不審請求が見つかりません。
一般的な原因:
- 不審請求IDが正しくない
- 不審請求が別のアカウントに属している
- IDのタイプミスまたは形式エラー
413
ファイルサイズ超過ファイルサイズが10MBの制限を超えています。
解決方法:
- ファイルを圧縮してサイズを小さくする
- 大きな書類を複数のファイルに分割する
- ファイルが10MB未満であることを確認する
422
処理できませんこの不審請求に書類をアップロードできません。
一般的な原因:
- 不審請求のステータスが「open」ではない(既に pending、won、または lost)
- 不審請求がクローズされている
- 書類の最大数に達した
5xx
サーバーエラーサーバー側でエラーが発生しました。まれですが、適切に処理する必要があります。
対処方法:
- 指数バックオフでリクエストを再試行する
- status.omise.co でサービスインシデントを確認する
- 詳細なガイダンスについてはエラーハンドリングを参照
コードサンプル
- cURL
- Ruby
- Python
- Node.js
- PHP
- Java
- C#
- Go
curl https://api.omise.co/disputes/dspt_test_5xuy4w91xqz7d1w9u0t/documents \
-X POST \
-u skey_test_5xuy4w91xqz7d1w9u0t: \
-F "file=@/path/to/delivery-proof.pdf" \
-F "kind=proof_of_receipt"
require 'omise'
Omise.api_key = 'skey_test_5xuy4w91xqz7d1w9u0t'
document = Omise::Dispute.upload_document('dspt_test_5xuy4w91xqz7d1w9u0t', {
file: File.open('/path/to/delivery-proof.pdf'),
kind: 'proof_of_receipt'
})
import omise
omise.api_secret = 'skey_test_5xuy4w91xqz7d1w9u0t'
with open('/path/to/delivery-proof.pdf', 'rb') as file:
document = omise.Dispute.upload_document(
'dspt_test_5xuy4w91xqz7d1w9u0t',
file=file,
kind='proof_of_receipt'
)
const omise = require('omise')({
secretKey: 'skey_test_5xuy4w91xqz7d1w9u0t'
});
const fs = require('fs');
const document = await omise.disputes.uploadDocument('dspt_test_5xuy4w91xqz7d1w9u0t', {
file: fs.createReadStream('/path/to/delivery-proof.pdf'),
kind: 'proof_of_receipt'
});
<?php
define('OMISE_SECRET_KEY', 'skey_test_5xuy4w91xqz7d1w9u0t');
$document = OmiseDispute::uploadDocument('dspt_test_5xuy4w91xqz7d1w9u0t', [
'file' => '@/path/to/delivery-proof.pdf',
'kind' => 'proof_of_receipt'
]);
Client client = new Client.Builder()
.secretKey("skey_test_5xuy4w91xqz7d1w9u0t")
.build();
File file = new File("/path/to/delivery-proof.pdf");
Document document = client.disputes().uploadDocument(
"dspt_test_5xuy4w91xqz7d1w9u0t",
file,
"proof_of_receipt"
);
var client = new Client("skey_test_5xuy4w91xqz7d1w9u0t");
using (var fileStream = File.OpenRead("/path/to/delivery-proof.pdf"))
{
var document = await client.Disputes.UploadDocument(
"dspt_test_5xuy4w91xqz7d1w9u0t",
fileStream,
"proof_of_receipt"
);
}
client, _ := omise.NewClient(
"pkey_test_5xuy4w91xqz7d1w9u0t",
"skey_test_5xuy4w91xqz7d1w9u0t",
)
file, _ := os.Open("/path/to/delivery-proof.pdf")
defer file.Close()
document, _ := client.UploadDisputeDocument("dspt_test_5xuy4w91xqz7d1w9u0t", file, "proof_of_receipt")
エラーコードと結果コード
一般的なエラーコード
| コード | 説明 | 解決方法 |
|---|---|---|
bad_request | 無効なファイルまたはパラメータ | ファイル形式とkindパラメータを確認してください |
authentication_failure | 無効なAPIキー | シークレットキーが正しいことを確認してください |
not_found | 不審請求が見つかりません | 不審請求IDが正しいことを確認してください |
file_too_large | ファイルが10MB制限を超えています | ファイルを圧縮または分割してください |
invalid_file_format | サポートされていないファイル形式 | PNG、JPG、またはPDFを使用してください |
dispute_not_open | 不審請求がオープンではありません | 書類はオープンな不審請求にのみ追加できます |
書類の種類の値
| 種類 | 説明 | 書類の例 |
|---|---|---|
cardholder_details | 顧客の本人確認 | 顧客ID、請求先住所の証明 |
details_of_purchase | 取引および注文の詳細 | 請求書、注文確認書、領収書 |
proof_of_receipt | 配達またはサービスの確認 | 追跡情報、署名入り配達証明 |
proof_of_acceptance | 顧客の承認 | メールのやり取り、利用規約の同意 |
API認証情報
試してみる
必須 - 2項目
追加 - 1項目
あなたのIP:
...読み込み中...