払い戻し処理

払い戻し処理を実施するには、決済情報を取得後「refund」メソッドをリクエストしてください。決済状態がオーソリ取得の場合はオーソリ取得枠の取り消し、すでに確定されており利用者に請求が発生している場合は返金をします。返金はクレジットカード会社より利用者に対して個別に連絡があり、振り込み、または次の請求分との相殺にて処理されます。払い戻し処理は一度リクエストすると処理の取り消しができませんのでご注意ください。

全額払い戻し

決済額を全額払い戻しします。amountパラメータは不要です。全額払い戻し処理は、非同期処理となっております。処理に成功するとwebhook機能でお知らせします。詳しくはこちらをご参照ください。

一部払い戻し

決済額の一部を払い戻しします。amountパラメータは必須です。一部払い戻し処理は、同期処理となっております。APIのレスポンスにより、一部払い戻し処理の成功・失敗を知ることができます。

リクエスト
id: 必須
決済を取得した際のidを指定してください。
amount: オプション、初期値は決済取得時の金額です。
返金する金額の指定が可能です。(例)10,000円の与信枠がある決済に対して 3,000円を返金する場合は、3,000円を指定してください。
レスポンス
全額払い戻し
成功のレスポンスが返却された場合はFastpay側でリクエストを受けつけたという意味です。その後、非同期処理にて全額払い戻し処理が実施されます。指定された金額がすでに払い戻しされている場合や無効なidが指定された場合はエラーを返却します。
一部払い戻し
一部払い戻し処理が成功した場合、決済情報を返却します。指定された金額がすでに払い戻しされている場合や無効なidが指定された場合はエラーを返却します。
cURL
PHP
サンプルリクエスト
//***************全額返金***************//
$ curl https://fastpay.yahooapis.jp/v1/charges/ch_KrkObjDZRodDVU7oKD73CMZn/refund \
-u dummy_secret_xxxxxxx: \
-X POST \
-H "Content-Length: 0"

//***************部分返金**************//
// amountに返金したい金額を指定してください。これは3000円分返金するサンプルです。
$ curl https://fastpay.yahooapis.jp/v1/charges/ch_KrkObjDZRodDVU7oKD73CMZn/refund \
-u dummy_secret_xxxxxxx: \
-X POST \
-d amount=3000

サンプルレスポンス
//***************全額返金**************//
{
    "refunds": [
        {
            "object": "refund",
            "created": 1392339137,
            "currency": "jpy",
            "amount": "10000"
        }
    ],
    "captured": false,
    "card": {
        "exp_year": 2019,
        "exp_month": 11,
        "type": "Visa",
        "last4": "4242",
        "object": "card",
        "id": "card_j0wc4FRFX2jYbMOT1SmMCk0c"
    },
    "failure_message": null,
    "refunded": true,
    "paid": true,
    "id": "ch_KrkObjDZRodDVU7oKD73CMZn",
    "object": "charge",
    "livemode": false,
    "currency": "jpy",
    "description": null,
    "amount": 10000,
    "amount_refunded": 10000,
	"created": 1392337942
}

//***************部分返金***************//
{
    "refunds": [
        {
            "object": "refund",
            "created": 1392339137,
            "currency": "jpy",
            "amount": "3000"
        }
    ],
    "captured": false,
    "card": {
        "exp_year": 2019,
        "exp_month": 11,
        "type": "Visa",
        "last4": "4242",
        "object": "card",
        "id": "card_j0wc4FRFX2jYbMOT1SmMCk0c"
    },
    "failure_message": null,
    "refunded": false,
    "paid": true,
    "id": "ch_KrkObjDZRodDVU7oKD73CMZn",
    "object": "charge",
    "livemode": false,
    "currency": "jpy",
    "description": null,
    "amount": 10000,
    "amount_refunded": 3000,
    "created": 1392337942
}
サンプルリクエスト
<?php
require "vendor/autoload.php";

use FastPay\FastPay;

$id = 'ch_u38XQCidQK692fhqxY7dZ9Ix';
$fastpay = new FastPay("dummy_secret_xxxxxxx");

// 全額返金
$charge = $fastpay->charge->retrieve($id)->refund();
// 部分返金(3000円分返金する例)
$charge = $fastpay->charge->retrieve($id)->refund(3000);


// charge idを表示
echo "charge id: {$charge->id}\n";

// amountを表示
echo "charge amount: {$charge->amount}\n";

// card idを表示
echo "card id: {$charge->card->id}\n";

// 取得した値をすべて表示
print_r($charge->getArray());