안드로이드 카카오페이 api 이용방법

카카오페이 공부를 하는 중인데요

{“msg”:“cid can’t be null.”,“code”:-2}를 받았는데요

map 형태로 담아서 TC0ONETIME을 cid를 넣어서 보냈는데 이렇게 보내는게 아닌가요 ??

이렇게 보내는게 아니라면 알려주시면 감사하겠습니다.

@POST("/v1/payment/ready")
Call getKakaoPay(@Body Map<String, String> body);

이런식으로 body에 담았습니다. header는 설정을 해줬습니다.

왜 그런지 알 수 있을까요 ??

안녕하세요. 카카오페입니다.

말씀하신 정보로는 알수없습니다.
인입된 로그를 확인해보기 위해서는 결제요청시 보내시는 헤더의 어드민키 or 네이티브앱키나 파라미터정보를 공유부탁드립니다.

추측으로는 cid를 body에 넣었으면에도 위와 같은에러가 발생하였다면,
헤더에 Content-type: application/x-www-form-urlencoded;charset=utf-8 이 안되셨는지 다시 확인부탁드립니다.

감사합니다.

안녕하세요.

retrofit2를 이용해서 통신을 하고있는데요 헤더에

@Headers({
“Authorization: KakaoAK 77472782014932bc8721c237a287e7ec”,
“Content-type: application/x-www-form-urlencoded;charset=utf-8”
})
@POST("/v1/payment/ready")
Call getKakaoPay(@Body Map<String, String> body);

이런식으로 넣어줬습니다 혹시 다르게 넣어야 할까요 ??

Map에 넣을 데이터는

Map<String, String> params = new HashMap<>();
params.put(“cid”, “TC0ONETIME”); // 가맹점 코드
params.put(“partner_order_id”, “1212453”); // 가맹점 주문 번호
params.put(“partner_user_id”, “Darby”); // 가맹점 회원 아이디
params.put(“item_name”, “productName”); // 상품 이름
params.put(“quantity”, “1”); // 상품 수량
params.put(“total_amount”, “150000”); // 상품 총액
params.put(“tax_free_amount”, “0”); // 상품 비과세
params.put(“approval_url”, “https://www.naver.com/success”); // 결제 성공시 돌려 받을 url 주소
params.put(“cancel_url”, “https://www.naver.com/cancel”); // 결제 취소시 돌려 받을 url 주소
params.put(“fail_url”, “https://www.naver.com/fail”); // 결제 실패시 돌려 받을 url 주소

이런식으로 넣어서 보낼려고 했습니다.