リンクの作成
指定されたパラメータで新しい支払いリンクを作成します。リンクは任意のプラットフォームで共有でき、単回使用または複数回使用に設定できます。
リクエストパラメータ
必須 - 4フィールド必須パラメータ
`amount`INTEGER(required)
最小通貨単位での支払い金額(THBの場合はサタン、USDの場合はセント)。顧客指定金額を許可する場合は0を使用。
`currency`STRING(required)
ISO 4217の3文字通貨コード(小文字)。
`title`STRING(required)
支払いページで顧客に表示されるリンク名。
`description`STRING(required)
顧客に表示されるリンクの詳細と追加コンテキスト。
推奨 - 1フィールド推奨パラメータ
追加 - 1フィールド追加パラメータ
レスポンス
200
作成成功リンクが正常に作成されました。顧客と共有できるpayment_uriを含む完全なリンクオブジェクトを返します。
主要なレスポンスフィールド:
payment_uri- 顧客が支払いを行うための共有可能なURLused- 単回使用リンクが消費されたかどうかを示すmultiple- リンクが複数回の支払いを許可するかどうかを示すcharges- このリンクで行われた課金のリスト
400
不正なリクエストリクエストの検証に失敗しました。詳細はエラーメッセージを確認してください。
一般的な原因:
- 必須フィールドの欠落(
amount、currency、title、description) - 無効な通貨コード
- 無効な金額(負の値)
- 無効なデータ形式
401
認証エラー認証に失敗しました。APIキーが無効または欠落しています。
一般的な原因:
- Authorizationヘッダーの欠落
- 無効なシークレットキー
- シークレットキーの代わりにパブリックキーを使用
- 不正なHTTP Basic Auth形式
5xx
サーバーエラーサーバー側でエラーが発生しました。これらは稀ですが、適切に処理する必要があります。
対処方法:
- 指数バックオフでリクエストを再試行
- status.omise.coでサービスインシデントを確認
- 詳細なガイダンスはエラー処理を参照
コードサンプル
- cURL
- Ruby
- Python
- Node.js
- PHP
- Java
- C#
- Go
curl https://api.omise.co/links \
-u skey_test_5xuy4w91xqz7d1w9u0t: \
-d "amount=100000" \
-d "currency=thb" \
-d "title=Invoice #12345 Payment" \
-d "description=Monthly subscription payment for January 2025"
require 'omise'
Omise.api_key = 'skey_test_5xuy4w91xqz7d1w9u0t'
link = Omise::Link.create({
amount: 100000,
currency: 'thb',
title: 'Invoice #12345 Payment',
description: 'Monthly subscription payment for January 2025'
})
import omise
omise.api_secret = 'skey_test_5xuy4w91xqz7d1w9u0t'
link = omise.Link.create(
amount=100000,
currency='thb',
title='Invoice #12345 Payment',
description='Monthly subscription payment for January 2025'
)
const omise = require('omise')({
secretKey: 'skey_test_5xuy4w91xqz7d1w9u0t'
});
const link = await omise.links.create({
amount: 100000,
currency: 'thb',
title: 'Invoice #12345 Payment',
description: 'Monthly subscription payment for January 2025'
});
<?php
define('OMISE_SECRET_KEY', 'skey_test_5xuy4w91xqz7d1w9u0t');
$link = OmiseLink::create([
'amount' => 100000,
'currency' => 'thb',
'title' => 'Invoice #12345 Payment',
'description' => 'Monthly subscription payment for January 2025'
]);
Client client = new Client.Builder()
.secretKey("skey_test_5xuy4w91xqz7d1w9u0t")
.build();
Link link = client.links().create()
.amount(100000L)
.currency("thb")
.title("Invoice #12345 Payment")
.description("Monthly subscription payment for January 2025")
.send();
var client = new Client("skey_test_5xuy4w91xqz7d1w9u0t");
var link = await client.Links.Create(new CreateLinkRequest
{
Amount = 100000,
Currency = "thb",
Title = "Invoice #12345 Payment",
Description = "Monthly subscription payment for January 2025"
});
client, _ := omise.NewClient(
"pkey_test_5xuy4w91xqz7d1w9u0t",
"skey_test_5xuy4w91xqz7d1w9u0t",
)
link, _ := client.Links().Create(&operations.CreateLink{
Amount: 100000,
Currency: "thb",
Title: "Invoice #12345 Payment",
Description: "Monthly subscription payment for January 2025",
})
エラーと結果コード
一般的なエラーコード
| コード | 説明 | 解決方法 |
|---|---|---|
bad_request | パラメータの欠落または無効 | すべての必須フィールドが提供されていることを確認 |
authentication_failure | 無効なAPIキー | シークレットキーが正しいことを確認 |
invalid_amount | 金額の検証に失敗 | 金額が0または正の整数であることを確認 |
invalid_currency | サポートされていない通貨 | サポートされている通貨コード(thb、jpy、sgd、myr、usd)を使用 |
リンクステータスフィールド
| フィールド | 説明 |
|---|---|
used | 単回使用リンクの消費状態(使用済みの場合true) |
multiple | リンクが複数回使用を許可するかどうか |
payment_uri | 顧客支払い用の共有可能なURL |
API認証情報
試してみる
必須 - 4項目
推奨 - 1項目
追加 - 1項目
あなたのIP:
...読み込み中...