ギフトカードと現金の併用支払い計算
このギフトカードと現金の併用支払い計算では、カード残高が購入額の一部、全額、または購入額を超える場合に、支払いがどのように分かれるかを正確に確認できます。購入金額と現在利用できるカード残高をご入力ください。利用可能な残高をできる限り充当し、現金で支払う残額と、決済後に残るギフトカード残高を表示します。会計前の買い物計画や、併用払いの内訳をほかの方へ説明する際に便利です。
無料で実行
購入金額と利用可能残高をご入力ください
まず、ギフトカードを適用する前の購入総額をご入力ください。次に、その取引で実際に利用できるギフトカード残高を入力します。金額を分割する計算であり、通貨換算は行わないため、2つの数値は必ず同じ通貨でご指定ください。42、42.50、19.99 のように、小数点以下2桁以内の一般的な金額を使用します。購入金額はゼロより大きい必要がありますが、カード残高はゼロでも有効です。その場合は購入額の全額が現金払いになります。すでに使用したカードについては、当初の額面ではなく、現在利用可能な残高をご入力ください。税、送料、割引、チップが会計総額に含まれる場合は、それらを反映した購入金額を指定します。この計算は、店舗が併用払いを認めているか、特定の手数料をギフトカードで支払えるかを判断するものではありません。支払総額と利用可能残高が分かっている場合の金額計算を行う機能です。
支払額の分け方をご確認ください
計算ではギフトカードを先に適用し、購入金額と利用可能残高のうち小さい方を上限とします。たとえば購入額が 80、カード残高が 30 なら、ギフトカード払いは 30、現金払いは 50 です。同じ購入額に対して残高が 100 なら、カードで 80 の全額を支払い、現金は不要で、カードには 20 が残ります。この規則により、カード利用額や現金支払額が負の値になることはありません。0.30000000000000004 のような浮動小数点特有の表示誤差を防ぐため、結果は整数の最小通貨単位で計算します。出力される購入金額は、算出された3つの値を確認する基準にもなります。カード利用額と現金支払額の合計は必ず購入金額と一致します。また、カード利用額と残高の合計は必ず開始時の残高と一致します。この2つの関係を使えば、結果の確認や会計プレビューへの組み込みを簡単に行えます。
会計や業務フローで結果をご利用ください
結果は支払い計画としてご利用いただくものであり、店舗による決済承認ではありません。「ギフトカード利用額」はカードに請求する金額です。「現金支払額」は、現金、デビットカード、クレジットカード、または店舗が認める別の支払方法で補う金額です。「残りのギフトカード残高」は、保留、手数料、店舗独自の制限がなければ、正常な決済後も利用できる見込みの金額です。お支払い前に、店舗がギフトカードと別の支払方法の併用を認めていること、および想定した順序でカードが適用されることをご確認ください。自動処理では、同じ2つの数値項目を API に送信し、返された4つの金額を見積書、カート、またはサポート回答とともに保存できます。1回のリクエスト料金は $0.002 で、ブラウザー版は無料です。ネットワークサービスを使わない決定的な計算なので、同じ入力からは同じ結果が得られ、買い物計画や再現可能なテストに適しています。
活用例
会計前に購入計画を立てる
利用可能なギフトカード残高を使った後、現金やカードであといくら必要かをご確認いただけます。
併用払いの内訳を説明する
お客様やご家族へ、ギフトカード分、現金分、残高を分かりやすく提示できます。
会計処理を事前確認する
ギフトカードを先に適用するカート、見積もり、返金ツール、サポート業務のテストに API の結果をご利用いただけます。
よくある質問
ギフトカードの利用額はどのように決まりますか?
購入金額と利用可能残高のうち小さい方を使用するため、購入額やカード残高を超えて適用されることはありません。
カード残高が購入金額より多い場合はどうなりますか?
購入額の全額をギフトカードで支払い、現金支払額はゼロとなり、未使用分が残高として表示されます。
ギフトカード残高がない場合はどうなりますか?
残高ゼロも入力できます。カード利用額はゼロとなり、購入額の全額が現金支払いに割り当てられます。
2つの金額に異なる通貨を指定できますか?
できません。両方を同じ通貨でご入力ください。この機能は支払いを分けるもので、通貨換算は行いません。
店舗が併用払いを受け付けることは保証されますか?
保証されません。店舗ごとに規則が異なるため、ギフトカードと現金などを併用できるか事前にご確認ください。
API の利用料金はいくらですか?
API は1回 $0.002 です。ブラウザーでも無料で計算できます。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/life/gift-card-split \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"purchase_amount":86.4,"gift_card_balance":50}'const res = await fetch("https://api.kit.forhosting.com/life/gift-card-split", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"purchase_amount": 86.4,
"gift_card_balance": 50
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/gift-card-split",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"purchase_amount": 86.4,
"gift_card_balance": 50
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/gift-card-split", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"purchase_amount":86.4,"gift_card_balance":50}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"purchase_amount":86.4,"gift_card_balance":50}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/gift-card-split", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"purchase_amount": 86.4,
"gift_card_balance": 50
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.gift_card_split",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |