카카오페이 결제승인 요청 완료된 후 결제취소가 안됩니다

  • 결제 승인 완료.
    https://kapi.kakao.com/v1/payment/approve

  • 결제 승인 결과
    {“aid”:“A2646820836925283323”,“tid”:“T2646820716665415738”,“cid”:“TC0ONETIME”,“partner_order_id”:“partner_order_id”,“partner_user_id”:“partner_user_id”,“payment_method_type”:“MONEY”,“item_name”:“롱샷”,“quantity”:1,“amount”:{“total”:1100,“tax_free”:0,“vat”:0,“point”:0,“discount”:0},“created_at”:“2019-07-12T15:36:12”,“approved_at”:“2019-07-12T15:36:48”}

  • 변수
    cid : TC0ONETIME
    tid: T2646820716665415738
    paymentPrice : 1100
    kakaoPay_Admin_Key : de5aaa5ec5b5f99ceb5465fa8dca2217

  • 결제취소 요청.
    var client = new RestClient(“https://kapi.kakao.com/v1/payment/cancel” +
    "?cid=" + cid +
    "&tid=" + tid + “” +
    "&cancel_amount=" + paymentPrice +
    "&cancel_tax_free_amount=0" +
    "&cancel_vat_amount=0" +
    "&cancel_available_amount=0");
    var request = new RestRequest(Method.POST);
    request.AddHeader(“Authorization”, "KakaoAK " + kakaoPay_Admin_Key);
    request.AddHeader(“Content-type”, “application/x-www-form-urlencoded;charset=utf-8”);
    IRestResponse response = client.Execute(request);
    JObject readyJObj = JObject.Parse(response.Content);

  • 결제취소 결과
    {“msg”:“invalid cancel available amount”,“code”:-711}

cancel_available_amount 컬럼은 옵션이지만,
올려주실경우, 취소금액을 포함한 금액전체를 올려주셔야합니다.
해당거래의 경우, 1100원을 올려주시면 됩니다.