# \[엔터프라이즈] 정기결제(배송) 변경 동의 관리 API 화면가이드

```
샵바이 엔터프라이즈의 정기결제(배송) 변경 동의 관리 기능을 사용할 수 있도록 기능 설명 및 
활용 가능한 shop API를 안내하는 콘텐츠입니다.

해당 기능을 사용하시려면 아래 소개해드리는 API를 활용하여 별도 화면 구현작업이 필요합니다.
```

### 01. 간단소개

* 샵바이 엔터프라이즈 전용
* 기능 요약
  * 정기결제(배송) 상품의 가격 변경 시, 고객에게 변경 내용을 사전에 안내하고 동의 여부를 관리할 수 있는 기능입니다.
  * 변경된 가격으로 결제가 진행되기 전까지 변경 내용에 대한 동의 절차를 거쳐야 하며, 동의 여부는 쇼핑몰  화면에서 선택할 수 있습니다.
  * 안내된 마감기한 내 동의 시 정기결제(배송)가 변경된 가격으로 유지되며, 무응답하거나 미동의할 경우 정기결제(배송)는 자동 해지됩니다.

{% hint style="success" %}
**동의 화면 노출 경로**

* 주문서 작성 / 결제
  * 신규로 신청하는 정기배송 상품의 가격 변동이 예정되어 있을 경우
* 마이페이지 > 회원정보 > \[T]정기배송 신청관리
  * 주문목록/배송조회
    * 이용중인 정기배송 상품의 가격 변동이 예정되어 있을 경우
  * 일시정지 해제
    * 가격 변동이 예정된 정기배송 상품을 일시정지 해제하는 경우
  * 배송정보 변경
    * 가격 변동이 예정된 정기배송 상품으로 변경하는 경우
      {% endhint %}

***

### 02. API 소개 및 화면 가이드

아래 API들을 활용하여 정기결제(배송) 변경 동의 관리 기능을 활용한 화면을 구현할 수 있습니다.

#### <mark style="background-color:blue;">1) 주문서 작성/결제 화면</mark>

<figure><img src="/files/F2QEUFb2kVlBs3v4xHD7" alt=""><figcaption></figcaption></figure>

■ [정기결제 주문서 가져오기](https://docs.shopby.co.kr/?url.primaryName=order/#/RecurringPayment/get-recurring-payments-order-sheets-order-sheets-no) API 확인하기

```
GET /recurring-payments/order-sheet/{orderSheetNo}
정기결제 주문서를 조회하는 API입니다.
```

* 정기결제 신청 시, 선택된 상품 중 가격 변동이 예정되어 있을 경우 사용자에게 동의 받을 화면을 구현할 수 있습니다.
* 가격 변동이 예정된 상품 데이터는 해당 API의 응답값 내 **recurringPaymentChangeAgreements** 필드에 포함되어 있습니다.

해당 응답 데이터를 활용하여 정기결제 신청 시 동의 안내 팝업창을 노출하고, 사용자의 정기결제 변경 동의여부를 수집해 주세요.

■ [정기결제 신청하기](https://docs.shopby.co.kr/?url.primaryName=order/#/RecurringPayment/post-recurring-payments) API 확인하기

```
POST /recurring-payments
정기결제를 신청하는 API입니다.
```

정기결제 주문서 가져오기 API의 응답으로 가져온

* 동의서 정보
* 사용자의 동의 응답

위 두 가지 정보를 **recurringPaymentChangeAgreements** 파라미터에 담아 정기결제 신청하기 API를 호출해야 합니다.

#### <mark style="background-color:blue;">2) 마이페이지 화면</mark>

**(2-1) 정기배송 신청관리 > 배송목록/조회**

<figure><img src="/files/CakEsKM6EIQ1zwfOW6nE" alt=""><figcaption></figcaption></figure>

■ [정기결제 조회하기](https://docs.shopby.co.kr/?url.primaryName=order/#/RecurringPayment/get-recurring-payments) API 확인하기

```
GET /recurring-payments
정기결제를 조회하는 API입니다.
```

* 이용중인 정기배송 상품의 가격 변동이 예정 되어 있을 경우 동의 화면을 구현할 수 있습니다.
* 가격 변동이 예정된 상품 데이터는 해당 API의 응답값 내 **recurringPaymentChangeAgreements** 필드에 포함되어 있습니다.

■ [정기결제 상품 변경 안내 응답 수집](https://docs.shopby.co.kr/?url.primaryName=order/#/RecurringPayment/patch-recurring-payments-recurring-payment-id-notices-agreement) API 확인하기

```
PATCH /recurring-payments/{recurringPaymentId}/notices/agreement
고객이 선택한 동의여부를 반영하는 API입니다.
```

* 구현된 화면에서 동의여부를 선택하면, 정기결제 변경 공지 동의/미동의 응답 제출 API를 호출하여 응답 이력을 저장 및 업데이트합니다.

**(2-2) 정기배송 신청관리 > 일시정지 해제**

<figure><img src="/files/4QDaTMFgXyrDeosHluwi" alt=""><figcaption></figcaption></figure>

■ [정기결제 상품 변경 안내 응답 수집](https://docs.shopby.co.kr/?url.primaryName=order/#/RecurringPayment/patch-recurring-payments-recurring-payment-id-notices-agreement) API 확인하기

```
PATCH /recurring-payments/{recurringPaymentId}/notices/agreement
고객이 선택한 동의여부를 반영하는 API입니다.
```

* 일시정지 해제 시 노출되는 팝업에서 동의 여부를 선택하면, 정기결제 변경 공지 동의/미동의 응답 제출 API를 호출하여 이전 응답 이력을 저장 및 업데이트합니다.

{% hint style="danger" %} <mark style="color:red;">**미동의 시에는 변경된 가격으로 정기결제를 유지하지 않는 것으로 간주되어, 이용상태가 일시정지로 유지됩니다.**</mark>
{% endhint %}

**(2-3) 정기배송 신청관리 > 배송정보 변경**

<figure><img src="/files/6x2fOdPefjKArECVDA2J" alt=""><figcaption></figcaption></figure>

■ [정기결제 상품 변경 안내 조회](https://docs.shopby.co.kr/?url.primaryName=order/#/RecurringPayment/post-recurring-payments-recurring-payment-id-notices-search) API 확인하기

```
POST /recurring-payments/{recurringPaymentId}/notices/search
상품의 정기결제 가격 변경 동의 등록여부를 조회하는 api 입니다.
```

* 가격변동이 예정된 정기배송 상품으로 변경하는 경우 동의 화면을 구현할 수 있습니다.
* 가격 변동이 예정된 상품 데이터는 정기결제 변경 안내 대상 조회 API를 통해 가져올 수 있습니다.

■ [정기결제 상품 변경 안내 응답 수집](https://docs.shopby.co.kr/?url.primaryName=order/#/RecurringPayment/patch-recurring-payments-recurring-payment-id-notices-agreement) API 확인하기

```
PATCH /recurring-payments/{recurringPaymentId}/notices/agreement
고객이 선택한 동의여부를 반영하는 API입니다.
```

* 상품 변경 시 노출되는 팝업에서 동의여부를 선택하면, 정기결제 변경 공지 동의/미동의 응답 제출 API를 호출하여 이전 응답 이력을 저장 및 업데이트합니다.

{% hint style="danger" %} <mark style="color:red;">**미동의 시에는 변경된 가격으로 정기결제를 유지하지 않는 것으로 간주되어, 선택한 상품으로 변경되지 않습니다.**</mark>
{% endhint %}


---

# 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/recurring-payments-change-api.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.
