# 보기/인쇄

## 1. GetPopUpURL - 전자명세서 팝업 URL

| HTTP Method | 테스트(Sandbox)                                                       | 운영(Production)                                                |
| ----------- | ------------------------------------------------------------------ | ------------------------------------------------------------- |
| GET         | <https://popbill-test.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> | <https://popbill.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> |

![전자명세서 팝업 URL 미리보기](https://developers.popbill.com/images/reference/statement/getPopUpURL.png)

**전자명세서 1건의 팝업 URL을 반환합니다.**

- 권장 사이즈 : width = 1,250px (최소 975px) / height = 800px
- 반환되는 URL은 30초 동안만 사용이 가능합니다.
- 반환되는 URL에서만 유효한 세션을 포함하고 있습니다.

### Request

**요청 헤더**

- Authorization `required: Y` `description: 인증 토큰`
  - [\[참고\] 인증 및 헤더 설정](https://developers.popbill.com/api-reference/statement/getting-started/authorization)
- Accept-Language `required: N` `description: 응답 언어 설정`
  - `ko-KR`: 기본값
  - `en-US`
- Accept-Encoding `required: N` `description: 응답 압축 방식`
  - `gzip`
- X-PB-UserID `required: N` `description: 팝빌회원 아이디`

**Path 파라미터**

- ItemCode `type: number` `length: -` `required: Y` `description: 전자명세서 문서 유형 (택 1)`
  - `121`: 거래명세서
  - `122`: 청구서
  - `123`: 견적서
  - `124`: 발주서
  - `125`: 입금표
  - `126`: 영수증
- MgtKey `type: string` `length: 24` `required: Y` `description: 파트너가 할당한 문서번호`

**Query 파라미터**

- TG `type: string` `length: -` `required: Y` `description: 고정값 : POPUP`

**요청 예시**

```bash
curl --request GET \
  --url 'https://{domain}/Statement/{ItemCode}/{MgtKey}?TG=POPUP' \
  --header 'Authorization: Bearer {token}'
```

### Response

**응답 본문**

- url `type: string` `length: -` `description: 전자명세서 팝업 URL`

**응답 예시**

```json
{
    "url": "https://test.popbill.com/App/API?T=2ZU3PQGQII4UD3J7HW2EURIBS...AWPV2OWRUPGACA======"
}
```

## 2. GetViewURL - 전자명세서 팝업 URL \[보기 전용]

| HTTP Method | 테스트(Sandbox)                                                       | 운영(Production)                                                |
| ----------- | ------------------------------------------------------------------ | ------------------------------------------------------------- |
| GET         | <https://popbill-test.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> | <https://popbill.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> |

![전자명세서 팝업 URL \[보기 전용\] 미리보기](https://developers.popbill.com/images/reference/statement/getViewURL.png)

**전자명세서 1건의 팝업 URL을 반환합니다.**

- 권장 사이즈 : width = 1,250px (최소 975px) / height = 800px
- 페이지 상/하단에 기능 버튼이 존재하지 않습니다.
- 반환되는 URL은 30초 동안만 사용이 가능합니다.
- 반환되는 URL에서만 유효한 세션을 포함하고 있습니다.

### Request

**요청 헤더**

- Authorization `required: Y` `description: 인증 토큰`
  - [\[참고\] 인증 및 헤더 설정](https://developers.popbill.com/api-reference/statement/getting-started/authorization)
- Accept-Language `required: N` `description: 응답 언어 설정`
  - `ko-KR`: 기본값
  - `en-US`
- Accept-Encoding `required: N` `description: 응답 압축 방식`
  - `gzip`
- X-PB-UserID `required: N` `description: 팝빌회원 아이디`

**Path 파라미터**

- ItemCode `type: number` `length: -` `required: Y` `description: 전자명세서 문서 유형 (택 1)`
  - `121`: 거래명세서
  - `122`: 청구서
  - `123`: 견적서
  - `124`: 발주서
  - `125`: 입금표
  - `126`: 영수증
- MgtKey `type: string` `length: 24` `required: Y` `description: 파트너가 할당한 문서번호`

**Query 파라미터**

- TG `type: string` `length: -` `required: Y` `description: 고정값 : VIEW`

**요청 예시**

```bash
curl --request GET \
  --url 'https://{domain}/Statement/{ItemCode}/{MgtKey}?TG=VIEW' \
  --header 'Authorization: Bearer {token}'
```

### Response

**응답 본문**

- url `type: string` `length: -` `description: 전자명세서 팝업 URL [보기 전용]`

**응답 예시**

```json
{
    "url": "https://test.popbill.com/App/API?T=2ZU3PQGQII4UD3J7HW2EURIBS...AWPV2OWRUPGACA======"
}
```

## 3. GetPrintURL - 공급자 인쇄 팝업 URL

| HTTP Method | 테스트(Sandbox)                                                       | 운영(Production)                                                |
| ----------- | ------------------------------------------------------------------ | ------------------------------------------------------------- |
| GET         | <https://popbill-test.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> | <https://popbill.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> |

![공급자 인쇄 팝업 URL 미리보기](https://developers.popbill.com/images/reference/statement/getPrintURL.png)

**전자명세서 1건의 공급자 인쇄 팝업 URL을 반환합니다.**

- 권장 사이즈 : width = 900px / height = 730px
- 반환되는 URL은 30초 동안만 사용이 가능합니다.
- 반환되는 URL에서만 유효한 세션을 포함하고 있습니다.

> 전자명세서의 공급자는 “발신자”, 공급받는자는 “수신자”를 나타내는 용어입니다.

### Request

**요청 헤더**

- Authorization `required: Y` `description: 인증 토큰`
  - [\[참고\] 인증 및 헤더 설정](https://developers.popbill.com/api-reference/statement/getting-started/authorization)
- Accept-Language `required: N` `description: 응답 언어 설정`
  - `ko-KR`: 기본값
  - `en-US`
- Accept-Encoding `required: N` `description: 응답 압축 방식`
  - `gzip`
- X-PB-UserID `required: N` `description: 팝빌회원 아이디`

**Path 파라미터**

- ItemCode `type: number` `length: -` `required: Y` `description: 전자명세서 문서 유형 (택 1)`
  - `121`: 거래명세서
  - `122`: 청구서
  - `123`: 견적서
  - `124`: 발주서
  - `125`: 입금표
  - `126`: 영수증
- MgtKey `type: string` `length: 24` `required: Y` `description: 파트너가 할당한 문서번호`

**Query 파라미터**

- TG `type: string` `length: -` `required: Y` `description: 고정값 : PRINT`

**요청 예시**

```bash
curl --request GET \
  --url 'https://{domain}/Statement/{ItemCode}/{MgtKey}?TG=PRINT' \
  --header 'Authorization: Bearer {token}'
```

### Response

**응답 본문**

- url `type: string` `length: -` `description: 전자명세서 공급자 인쇄 팝업 URL`

**응답 예시**

```json
{
    "url": "https://test.popbill.com/App/API?T=2ZU3PQGQII4UD3J7HW2EURIBS...AWPV2OWRUPGACA======"
}
```

## 4. GetEPrintURL - 공급받는자 인쇄 팝업 URL

| HTTP Method | 테스트(Sandbox)                                                       | 운영(Production)                                                |
| ----------- | ------------------------------------------------------------------ | ------------------------------------------------------------- |
| GET         | <https://popbill-test.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> | <https://popbill.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> |

![공급받는자 인쇄 팝업 URL 미리보기](https://developers.popbill.com/images/reference/statement/getEPrintURL.png)

**전자명세서 1건의 공급받는자 인쇄 팝업 URL을 반환합니다.**

- 권장 사이즈 : width = 900px / height = 730px
- 반환되는 URL은 30초 동안만 사용이 가능합니다.
- 반환되는 URL에서만 유효한 세션을 포함하고 있습니다.

> 전자명세서의 공급받는자는 “수신자”를 나타내는 용어입니다.

### Request

**요청 헤더**

- Authorization `required: Y` `description: 인증 토큰`
  - [\[참고\] 인증 및 헤더 설정](https://developers.popbill.com/api-reference/statement/getting-started/authorization)
- Accept-Language `required: N` `description: 응답 언어 설정`
  - `ko-KR`: 기본값
  - `en-US`
- Accept-Encoding `required: N` `description: 응답 압축 방식`
  - `gzip`
- X-PB-UserID `required: N` `description: 팝빌회원 아이디`

**Path 파라미터**

- ItemCode `type: number` `length: -` `required: Y` `description: 전자명세서 문서 유형 (택 1)`
  - `121`: 거래명세서
  - `122`: 청구서
  - `123`: 견적서
  - `124`: 발주서
  - `125`: 입금표
  - `126`: 영수증
- MgtKey `type: string` `length: 24` `required: Y` `description: 파트너가 할당한 문서번호`

**Query 파라미터**

- TG `type: string` `length: -` `required: Y` `description: 고정값 : EPRINT`

**요청 예시**

```bash
curl --request GET \
  --url 'https://{domain}/Statement/{ItemCode}/{MgtKey}?TG=EPRINT' \
  --header 'Authorization: Bearer {token}'
```

### Response

**응답 본문**

- url `type: string` `length: -` `description: 전자명세서 공급받는자 인쇄 팝업 URL`

**응답 예시**

```json
{
    "url": "https://test.popbill.com/App/API?T=2ZU3PQGQII4UD3J7HW2EURIBS...AWPV2OWRUPGACA======"
}
```

## 5. GetMassPrintURL - 다건 인쇄 팝업 URL

| HTTP Method | 테스트(Sandbox)                                              | 운영(Production)                                       |
| ----------- | --------------------------------------------------------- | ---------------------------------------------------- |
| POST        | <https://popbill-test.linkhub.co.kr/Statement/{ItemCode}> | <https://popbill.linkhub.co.kr/Statement/{ItemCode}> |

![다건 인쇄 팝업 URL 미리보기](https://developers.popbill.com/images/reference/statement/getMassPrintURL.png)

**전자명세서 다건의 인쇄 팝업 URL을 반환합니다.**

- 권장 사이즈 : width = 900px / height = 730px
- 1회 호출에 최대 100건까지 인쇄가 가능합니다.
- 반환되는 URL은 30초 동안만 사용이 가능합니다.
- 반환되는 URL에서만 유효한 세션을 포함하고 있습니다.

### Request

**요청 헤더**

- Authorization `required: Y` `description: 인증 토큰`
  - [\[참고\] 인증 및 헤더 설정](https://developers.popbill.com/api-reference/statement/getting-started/authorization)
- Accept-Language `required: N` `description: 응답 언어 설정`
  - `ko-KR`: 기본값
  - `en-US`
- Accept-Encoding `required: N` `description: 응답 압축 방식`
  - `gzip`
- X-PB-UserID `required: N` `description: 팝빌회원 아이디`

**Path 파라미터**

- ItemCode `type: number` `length: -` `required: Y` `description: 전자명세서 문서 유형 (택 1)`
  - `121`: 거래명세서
  - `122`: 청구서
  - `123`: 견적서
  - `124`: 발주서
  - `125`: 입금표
  - `126`: 영수증

**Query 파라미터**

- Print `type: string` `length: -` `required: Y` `description: 빈값으로 입력`

**요청 본문**

- \- `type: array` `length: 100` `required: Y` `description: 문서번호 목록`
  - 최대 : 100건

**요청 예시**

```bash
curl --request POST \
  --url 'https://{domain}/Statement/{ItemCode}?Print' \
  --header 'Authorization: Bearer {token}' \
  --data '["TEST0001"]'
```

### Response

**응답 본문**

- url `type: string` `length: -` `description: 전자명세서 다건 인쇄 팝업 URL`

**응답 예시**

```json
{
    "url": "https://test.popbill.com/App/API?T=2ZU3PQGQII4UD3J7HW2EURIBS...AWPV2OWRUPGACA======"
}
```

## 6. GetMailURL - 메일 보기 팝업 URL

| HTTP Method | 테스트(Sandbox)                                                       | 운영(Production)                                                |
| ----------- | ------------------------------------------------------------------ | ------------------------------------------------------------- |
| GET         | <https://popbill-test.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> | <https://popbill.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}> |

![메일 보기 팝업 URL 미리보기](https://developers.popbill.com/images/reference/statement/getMailURL.png)

**전자명세서 발행 안내 메일의 ‘보기’ 버튼 URL을 반환합니다.**

- 권장 사이즈 : width = 1,250px (최소 975px) / height = 800px
- 반환되는 URL은 유효기간 제한 없이 사용할 수 있습니다.
- 반환되는 URL에서만 유효한 세션을 포함하고 있습니다.

### Request

**요청 헤더**

- Authorization `required: Y` `description: 인증 토큰`
  - [\[참고\] 인증 및 헤더 설정](https://developers.popbill.com/api-reference/statement/getting-started/authorization)
- Accept-Language `required: N` `description: 응답 언어 설정`
  - `ko-KR`: 기본값
  - `en-US`
- Accept-Encoding `required: N` `description: 응답 압축 방식`
  - `gzip`
- X-PB-UserID `required: N` `description: 팝빌회원 아이디`

**Path 파라미터**

- ItemCode `type: number` `length: -` `required: Y` `description: 전자명세서 문서 유형 (택 1)`
  - `121`: 거래명세서
  - `122`: 청구서
  - `123`: 견적서
  - `124`: 발주서
  - `125`: 입금표
  - `126`: 영수증
- MgtKey `type: string` `length: 24` `required: Y` `description: 파트너가 할당한 문서번호`

**Query 파라미터**

- TG `type: string` `length: -` `required: Y` `description: 고정값 : MAIL`

**요청 예시**

```bash
curl --request GET \
  --url 'https://{domain}/Statement/{ItemCode}/{MgtKey}?TG=MAIL' \
  --header 'Authorization: Bearer {token}'
```

### Response

**응답 본문**

- url `type: string` `length: -` `description: 전자명세서 메일 보기 팝업 URL`

**응답 예시**

```json
{
    "url": "https://test.popbill.com/App/Statement/026091113323500001.E?T=FV4UODO...4SVV07VHMK8"
}
```
