> For the complete documentation index, see [llms.txt](https://workspace-help.nhn-commerce.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://workspace-help.nhn-commerce.com/contents/recommended/recurring-payments-change-api.md).

# \[엔터프라이즈] 정기결제(배송) 변경 동의 관리 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 %}
