# \[엔터프라이즈] 이니렌탈(렌탈결제) API 화면가이드

### 01. 간단소개  <a href="#id-01.-ea-b0-84-eb-8b-a8-ec-86-8c-ea-b0-9c" id="id-01.-ea-b0-84-eb-8b-a8-ec-86-8c-ea-b0-9c"></a>

* 기능요약
  * 이니렌탈(렌탈결제) 기능: 고액의 상품을 분할 납부하는 구독결제 방식의 결제 서비스
    * 이니렌탈은 상품금액을 분할하여 납부할 수 있는 렌탈 결제 수단입니다. 이니렌탈로 구매한 상품은 약정한 월 납부금액이 완납되면 소유권이 고객에게 이전됩니다.
  * 대상 솔루션: 샵바이 엔터프라이즈 전용
  * 기능 배포일자:2022-11-16
* 기능상세
  * 이니렌탈 상품 어드민 등록 및 활용방법은 아래 공지사항 내 첨부파일을 참고해주시길 바랍니다
  * SA(서비스어드민): [공지사항 보기 >](https://service.shopby.co.kr/board/popup/notice/148?noticeTarget=PLATFORM_TO_SERVICE)
  * BPA(파트너어드민): [공지사항 보기 >](https://partner.shopby.co.kr/board/popup/notice/149?noticeTarget=PLATFORM_TO_PARTNER)
  * [<mark style="color:red;">**서비스 신청 바로가기 >**</mark>](https://apps.godo.co.kr/apps/1339)

※ 쇼핑몰에서 직접 PG사(이니렌탈)에 렌탈결제 관련 key를 요청해야하며, 해당 key값 존재여부에 따라 '렌탈결제 사용여부'가 자동으로 세팅됩니다.

* key값 존재 시: 렌탈결제 '사용함'처리\
  ㄴ Front > 상품 상세페이지 : 이니렌탈 구매안내(월납부금액, 렌탈기간) 영역 노출\
  ㄴ Front > 주문서 작성/결제 : 렌탈상품 주문 가능
* key값 미존재 시: 렌탈결제 '사용안함'처리\
  &#x20;ㄴFront > 상품 상세페이지 : 이니렌탈 구매안내 영역 미노출 (API 호출 없음)\
  ㄴ Front > 주문서 작성/결제에서 렌탈상품 주문 불가 (결제수단 선택 불가)

***

### 02. (예시) API소개 및 화면 가이드 <a href="#id-02.-ec-98-88-ec-8b-9c-api-ec-86-8c-ea-b0-9c-eb-b0-8f-ed-99-94-eb-a9-b4-ea-b0-80-ec-9d-b4-eb-93-9c" id="id-02.-ec-98-88-ec-8b-9c-api-ec-86-8c-ea-b0-9c-eb-b0-8f-ed-99-94-eb-a9-b4-ea-b0-80-ec-9d-b4-eb-93-9c"></a>

아래 API들을 활용하여 이니렌탈(렌탈결제) 기능을 활용한 화면을 구현할 수 있습니다.<br>

#### 1)  상품 상세페이지 화면  <a href="#id-1-ec-83-81-ed-92-88-ec-83-81-ec-84-b8-ed-8e-98-ec-9d-b4-ec-a7-80-ed-99-94-eb-a9-b4" id="id-1-ec-83-81-ed-92-88-ec-83-81-ec-84-b8-ed-8e-98-ec-9d-b4-ec-a7-80-ed-99-94-eb-a9-b4"></a>

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091356.70215000/image.png" alt=""><figcaption></figcaption></figure>

① 렌탈료 조회

■ [옵션 조회하기 API](https://docs.shopby.co.kr/?url.primaryName=product/#/Product/get-product-options) 확인하기

```
GET /products/{productNo}/options
해당 상품번호에 대한 옵션 정보를 조회하는 API입니다
```

\- ✔ 해당 API를 호출하여 상품 상세페이지 진입 시, 상품의 렌탈기간 및 월납부 금액을 출력할 수 있습니다. (단, 렌탈결제 사용안함의 경우, API가 호출되지 않습니다)\
&#x20; 응답값 내 `multiLevelOptions(분리형옵션)> children> rentalInfo` 또는 `flatOptions(일체형옵션) > rentalInfo` 필드값을 활용하실 수 있습니다.\
&#x20; 만약 옵션이 있을 경우, 옵션 선택 시점에 해당 API를 호출하여 렌탈기간 및 월납부 금액을 출력합니다.

\- 월 납부 금액이 가장 적은 순으로 노출됩니다.\
&#x20;  (ex) 해당 상품의 금액이 240만원이고 렌탈계약을 12개월/24개월로 진행한 경우 아래와 같이 노출됨.\
&#x20;  월 100,000원(24개월)\
&#x20;  월 200,000원(12개월)

\- ✔ 렌탈상품은 한 주문에 1가지 옵션만 구매 가능합니다. (2개이상의 옵션상품은 선택 불가)\
&#x20; 만약 이미 1개의 옵션이 선택된 경우, 쇼핑몰 고객이 옵션을 추가로 선택하려고할 시 "렌탈 상품은 옵션단위로 1개의 수량만 주문가능합니다"라는 알럿메시지가 출력되어야합니다.\
\- 구매자 작성형 옵션은 등록가능합니다.

\- 렌탈상품은 현재 장바구니 기능을 제공하지 않습니다.\
\- 네이버페이 결제버튼은 노출되지 않습니다.

② 구매수량\
\- 렌탈 상품은 구매수량 1개만 선택가능합니다.

③ 렌탈 주문 (버튼)\
\- 렌탈 상품인 경우 \[렌탈 주문] 버튼이 출력됩니다.\
\- 버튼 클릭 시, 유효성 검사를 진행하고 주문서 작성페이지로 이동합니다.  \
\- ✔해당 버튼 클릭 시, 만약 ②에서 구매수량이 2개 이상일 경우 "구매수량이 제한되었습니다"와 같은 알럿메시지 노출이 필요합니다. \
&#x20; 만약 필수 옵션을 선택하지 않은 경우 "옵션을 선택해주세요"와 같은 알럿 메시지 노출이 필요합니다.&#x20;

\- 해당 버튼 클릭 시, 아래 API를 통해 선택한 상품 옵션에 대한 주문서가 생성됩니다.

■ [주문서 작성하기 API](https://docs.shopby.co.kr/?url.primaryName=order/#/OrderSheet/post-order-sheet) 확인하기

```
POST /order-sheets
주문을 진행할 상품정보를 전달하는 API입니다. 주문서 화면으로 이동하기 전 단계에서 호출해야 합니다.
```

Request body 내 `products > rentalInfos(렌탈정보)` 필드값을 활용하실 수 있습니다.\
응답 값으로 획득한 `주문서 번호 orderSheetNo`를 아래 문단에서 소개드릴 주문서 화면으로 전달합니다.

***

#### 2)  주문서 화면  <a href="#id-2-ec-a3-bc-eb-ac-b8-ec-84-9c-ed-99-94-eb-a9-b4" id="id-2-ec-a3-bc-eb-ac-b8-ec-84-9c-ed-99-94-eb-a9-b4"></a>

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091407.798410000/image.png" alt=""><figcaption></figcaption></figure>

#### ① 주문서 조회 <a href="#e2-91-a0-ec-a3-bc-eb-ac-b8-ec-84-9c-ec-a1-b0-ed-9a-8c" id="e2-91-a0-ec-a3-bc-eb-ac-b8-ec-84-9c-ec-a1-b0-ed-9a-8c"></a>

■ [주문서 조회하기 API](https://docs.shopby.co.kr/?url.primaryName=order/#/OrderSheet/get-order-sheet) 확인하기

```
GET /order-sheets/{orderSheetNo}
주문서번호로 주문 상품정보를 조회하는 API입니다.
```

\- 앞서 POST /order-sheets 주문서 생성 요청 API를 통해 획득한 orderSheetNo(주문서 번호)에 해당하는 주문 상품 상세 정보를 호출합니다.\
&#x20; ✔ 주문서 화면 내 , 이니렌탈(렌탈결제) 관련 항목은 응답 값 내 `rentalInfos(렌탈정보)`를 통해 구현할 수 있습니다.

\- 렌탈상품 주문 시, '이니렌탈' 이외의 결제수단은 사용이 불가합니다.(이니렌탈 외 다른 결제수단은 미노출)\
\- 렌탈결제 사용안함(미설정) 상태인 경우, 결제수단 선택이 비활성화됩니다.\
\- 렌탈 상품 구매 시, 쿠폰 및 적립금은 사용이 불가능합니다. (단, 구매금액에 대한 적립금은 일반상품과 동일하게 적립됩니다)\
&#x20;&#x20;

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091455.895451000/image.png" alt=""><figcaption></figcaption></figure>

#### ② 결제하기 (버튼) <a href="#e2-91-a1-ea-b2-b0-ec-a0-9c-ed-95-98-ea-b8-b0-eb-b2-84-ed-8a-bc" id="e2-91-a1-ea-b2-b0-ec-a0-9c-ed-95-98-ea-b8-b0-eb-b2-84-ed-8a-bc"></a>

■  [주문하기 API](https://docs.shopby.co.kr/?url.primaryName=order/#/Purchase/post-payments-reserve) 확인하기

```
POST /payments/reserve
결제를 진행하는 API입니다.
```

\- 결제하기 버튼 클릭 시, 입력정보 전체 유효성 검사가 진행 됩니다.\
&#x20;  ✔ 만약 렌탈결제 사용안함(미설정)상태인 경우, 결제수단이 비활성화되어 렌탈상품 주문이 불가하므로 "결제 수단을 선택해주세요"와 같은 알럿 메시지가 출력되어야합니다.

\- 유효성 검사 완료 시, 이니렌탈에서 제공하는 렌탈페이 모듈이 호출 됩니다. (아래 이미지 참고)\
&#x20;  ✔ 해당 API의 Request body 내 `rentalInfo(렌탈 상품 정보)` 필드값을 통해 월렌탈료 및 렌탈기간을 전달하게 됩니다.\
&#x20; &#x20;

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091503.539626000/image.png" alt=""><figcaption></figcaption></figure>

\ <br>

#### 3)  주문완료 화면  <a href="#id-3-ec-a3-bc-eb-ac-b8-ec-99-84-eb-a3-8c-ed-99-94-eb-a9-b4" id="id-3-ec-a3-bc-eb-ac-b8-ec-99-84-eb-a3-8c-ed-99-94-eb-a9-b4"></a>

<br>

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091513.618012000/image.png" alt=""><figcaption></figcaption></figure>

■  [주문상세 조회하기](https://docs.shopby.co.kr/?url.primaryName=order/#/MyOrder/get-profile-orders-order-no) API확인하기

```
GET /profile/orders/{orderNo}
주문번호로 주문 상세 데이터를 조회하는 API입니다.
```

\- ✔응답값 내 `payInfo > rentalInfo(렌탈정보)` 필드 값을 통해, 위 샘플 화면과 같은 주문완료 화면을 구현할 수 있습니다.

<br>

#### 4)  마이페이지 화면  <a href="#id-4-eb-a7-88-ec-9d-b4-ed-8e-98-ec-9d-b4-ec-a7-80-ed-99-94-eb-a9-b4" id="id-4-eb-a7-88-ec-9d-b4-ed-8e-98-ec-9d-b4-ec-a7-80-ed-99-94-eb-a9-b4"></a>

\
■  [주문상세 조회하기](https://docs.shopby.co.kr/?url.primaryName=order/#/MyOrder/get-profile-orders-order-no) API 확인하기

```
GET /profile/orders/{orderNo}
주문번호로 주문 상세 데이터를 조회하는 API입니다.
```

\- ✔ 주문완료 화면과 동일한 API 필드값 사용하여 화면을 구성할 수 있습니다.

\
\- ✔마이페이지> 주문/취소/반품 내역 화면에서, 결제된 상품이 렌탈상품인 경우 상품명 앞에 `(렌탈상품)`이 출력되어야합니다.&#x20;

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091522.987510000/image.png" alt=""><figcaption></figcaption></figure>

\
\- 마이페이지> 주문/취소/반품 화면에서 주문번호 클릭 시 출력되는 화면에서\
&#x20; 렌탈상품인 경우, 위와 같은 렌탈주문 관련 클레임 안내문구가 출력됩니다. (이니렌탈 고객센터로 이관하여 문의할 수 있는 안내문구 <https://www.inicis.com/personal_contact>)

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091529.324637000/image.png" alt=""><figcaption></figcaption></figure>

\- 렌탈 상품 주문건은, 교환신청이 불가합니다. \
&#x20; ✔ \[교환신청]버튼 클릭 시 "렌탈주문은 교환이 불가합니다. 이니렌탈 고객센터를 통해 문의해주시기 바랍니다. (1800-1739)" 와 같은 알럿메시지 출력이 필요합니다.&#x20;

\
\- 렌탈 상품 주문건은, 배송완료 8일이 경과하였을 경우 반품신청이 불가합니다.\
&#x20; ✔ 이 경우, \[반품신청] 버튼 클릭 시, "배송완료 8일이 경과한 렌탈주문은 이니렌탈 고객 센터를 통해 문의해주시기 바랍니다. (1800-1739)" 와 같은 알럿메시지 출력이 필요합니다.&#x20;

\
\
\- 렌탈상품 주문건은, 결제수단에 '렌탈결제'가 노출됩니다.

<figure><img src="https://rlyfaazj0.toastcdn.net/20221117/091537.920837000/image.png" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://workspace-help.nhn-commerce.com/contents/recommended/prm_inirental.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
