---
title: "권한 레퍼런스 | Tajo"
description: "Stripe Apps에서 사용할 수 있는 Stripe API 권한 전체 레퍼런스"
url: https://tajo.io/kr/docs/stripe-apps/permissions/
markdown: https://tajo.io/kr/docs/stripe-apps/permissions.md
lang: ko-KR
author: "Set Noa"
author_url: https://tajo.io/kr/set-noa/
robots: noindex
---

Tajo 사전 이용 신청

이름과 회사 이메일 주소를 입력하세요. Tajo 이용 신청을 확인할 수 있는 링크를 이메일로 보내드립니다.

# 권한 레퍼런스

[Set Noa](https://tajo.io/kr/set-noa/)

Stripe Apps는 권한 시스템을 사용해 Stripe API 리소스에 대한 접근을 제어합니다. 각 권한은 앱 매니페스트에 명확한 목적 설명과 함께 명시적으로 선언해야 합니다. 사용자는 앱을 설치할 때 이 권한을 승인합니다.

Caution

**상태: 예정, 아직 구축되지 않음.** Tajo에는 Stripe App이 없으므로 이 섹션의 어떤 것도 현재 설치할 수 없습니다. 이 페이지에 나오는 앱 식별자, URL, 자격 증명은 실제로 동작하는 엔드포인트가 아니라 예시용 자리표시자입니다.

## 권한 관리

### 권한 선언

`stripe-app.json` 매니페스트에 권한을 추가합니다:

```json
{
  "permissions": [
    {
      "permission": "customer_read",
      "purpose": "Read customer profiles to sync with Brevo contacts"
    },
    {
      "permission": "customer_write",
      "purpose": "Update customer metadata with Brevo sync status"
    }
  ]
}
```

### CLI로 권한 부여

개발 단계에서는 Stripe CLI로 권한을 부여할 수 있습니다:

```bash
# Grant a specific permission
stripe apps grant permission "customer_read" \
  --purpose "Read customer profiles to sync with Brevo contacts"

# Grant multiple permissions
stripe apps grant permission "charge_read" \
  --purpose "Access payment data for event tracking"

stripe apps grant permission "event_read" \
  --purpose "Read Stripe events"
```

### 권한 모범 사례

- **최소한의 권한**: 앱이 실제로 사용하는 권한만 요청합니다
- **명확한 목적**: 기술 지식이 없는 사용자도 이해할 수 있게 목적 설명을 작성합니다
- **읽기와 쓰기의 근거 제시**: 읽기와 쓰기가 모두 필요하다면 각 목적 설명에 그 이유를 밝힙니다
- **정기적인 검토**: 앱을 업데이트할 때 더 이상 필요하지 않은 권한은 삭제합니다

Tip

과도한 권한 요청은 앱이 반려되는 가장 흔한 이유 중 하나입니다. 필요한 권한만 요청하세요.

## 제품별 권한

### 코어

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Account** | `account_read` | 계정 상세 정보와 설정을 조회합니다 |
| **Account** | `account_write` | 계정 설정을 업데이트합니다 |
| **Balance** | `balance_read` | 계정 잔액과 거래 내역을 확인합니다 |
| **Customer** | `customer_read` | 고객 프로필, 메타데이터, 결제 수단을 조회합니다 |
| **Customer** | `customer_write` | 고객 레코드를 생성, 업데이트, 삭제합니다 |
| **Event** | `event_read` | 계정 이벤트를 조회하고 구독합니다 |
| **File** | `file_read` | 업로드된 파일과 파일 링크를 조회합니다 |
| **File** | `file_write` | 파일을 업로드하고 파일 링크를 생성합니다 |
| **Mandate** | `mandate_read` | 결제 맨데이트를 조회합니다 |
| **Product** | `product_read` | 상품 카탈로그와 가격을 조회합니다 |
| **Product** | `product_write` | 상품과 가격을 생성, 업데이트, 삭제합니다 |
| **Token** | `token_read` | 토큰화된 결제 데이터를 조회합니다 |
| **Webhook Endpoint** | `webhook_endpoint_read` | 웹훅 엔드포인트 설정을 조회합니다 |
| **Webhook Endpoint** | `webhook_endpoint_write` | 웹훅 엔드포인트를 생성, 업데이트, 삭제합니다 |

### 결제

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Charge** | `charge_read` | 결제 청구와 환불 내역을 조회합니다 |
| **Charge** | `charge_write` | 청구를 생성하고 결제를 캡처하며 환불을 처리합니다 |
| **Dispute** | `dispute_read` | 결제 분쟁과 증빙 자료를 조회합니다 |
| **Dispute** | `dispute_write` | 분쟁 증빙 자료를 제출하고 분쟁에 대응합니다 |
| **Payment Intent** | `payment_intent_read` | 결제 인텐트의 상세 정보와 상태를 조회합니다 |
| **Payment Intent** | `payment_intent_write` | 결제 인텐트를 생성, 확정, 취소합니다 |
| **Payment Method** | `payment_method_read` | 저장된 결제 수단을 조회합니다 |
| **Payment Method** | `payment_method_write` | 고객에게 결제 수단을 연결하거나 해제합니다 |
| **Payout** | `payout_read` | 지급 상세 정보와 일정을 조회합니다 |
| **Payout** | `payout_write` | 지급을 생성하거나 취소합니다 |
| **Refund** | `refund_read` | 환불 상세 정보를 조회합니다 |
| **Refund** | `refund_write` | 환불을 생성하거나 업데이트합니다 |
| **Setup Intent** | `setup_intent_read` | 셋업 인텐트 상세 정보를 조회합니다 |
| **Setup Intent** | `setup_intent_write` | 셋업 인텐트를 생성하거나 확정합니다 |

### 청구

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Coupon** | `coupon_read` | 할인 쿠폰과 프로모션 코드를 조회합니다 |
| **Coupon** | `coupon_write` | 쿠폰을 생성, 업데이트, 삭제합니다 |
| **Credit Note** | `credit_note_read` | 크레딧 노트를 조회합니다 |
| **Credit Note** | `credit_note_write` | 크레딧 노트를 생성하거나 무효화합니다 |
| **Invoice** | `invoice_read` | 인보이스 상세 정보, 항목, 상태를 조회합니다 |
| **Invoice** | `invoice_write` | 인보이스를 생성, 업데이트, 확정, 무효화합니다 |
| **Invoice Item** | `invoice_item_read` | 대기 중인 인보이스 항목을 조회합니다 |
| **Invoice Item** | `invoice_item_write` | 인보이스 항목을 생성하거나 삭제합니다 |
| **Plan** | `plan_read` | 구독 플랜과 가격을 조회합니다 |
| **Plan** | `plan_write` | 플랜을 생성, 업데이트, 삭제합니다 |
| **Price** | `price_read` | 가격 설정을 조회합니다 |
| **Price** | `price_write` | 가격을 생성하거나 업데이트합니다 |
| **Quote** | `quote_read` | 가격 견적서를 조회합니다 |
| **Quote** | `quote_write` | 견적서를 생성, 확정, 수락합니다 |
| **Subscription** | `subscription_read` | 구독 상세 정보, 일정, 상태를 조회합니다 |
| **Subscription** | `subscription_write` | 구독을 생성, 업데이트, 취소합니다 |
| **Subscription Schedule** | `subscription_schedule_read` | 구독 일정을 조회합니다 |
| **Subscription Schedule** | `subscription_schedule_write` | 구독 일정을 생성, 업데이트, 해제합니다 |
| **Usage Record** | `usage_record_read` | 사용량 기반 청구의 사용 기록을 조회합니다 |
| **Usage Record** | `usage_record_write` | 사용량 기반 청구를 위한 사용 기록을 생성합니다 |

### Checkout

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Checkout Session** | `checkout_session_read` | Checkout Session의 상세 정보와 항목을 조회합니다 |
| **Checkout Session** | `checkout_session_write` | Checkout Session을 생성하거나 만료시킵니다 |
| **Payment Link** | `payment_link_read` | Payment Link 설정을 조회합니다 |
| **Payment Link** | `payment_link_write` | Payment Link를 생성하거나 업데이트합니다 |

### Connect

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Application Fee** | `application_fee_read` | 애플리케이션 수수료 상세 정보를 조회합니다 |
| **Connected Account** | `connected_account_read` | 연결 계정의 상세 정보를 조회합니다 |
| **Connected Account** | `connected_account_write` | 연결 계정을 생성하거나 업데이트합니다 |
| **Transfer** | `transfer_read` | 계정 간 이체 상세 정보를 조회합니다 |
| **Transfer** | `transfer_write` | 연결 계정으로 이체를 생성합니다 |
| **Top-up** | `topup_read` | 충전 상세 정보를 조회합니다 |
| **Top-up** | `topup_write` | Stripe 잔액으로 충전을 생성합니다 |

### Issuing

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Issuing Card** | `issuing_card_read` | 발급된 카드의 상세 정보를 조회합니다 |
| **Issuing Card** | `issuing_card_write` | 발급 카드를 생성, 업데이트, 비활성화합니다 |
| **Issuing Cardholder** | `issuing_cardholder_read` | 카드 소지자 정보를 조회합니다 |
| **Issuing Cardholder** | `issuing_cardholder_write` | 카드 소지자를 생성하거나 업데이트합니다 |
| **Issuing Transaction** | `issuing_transaction_read` | 카드 거래 상세 정보를 조회합니다 |
| **Issuing Authorization** | `issuing_authorization_read` | 승인 요청을 조회합니다 |
| **Issuing Authorization** | `issuing_authorization_write` | 승인 요청을 승인하거나 거절합니다 |
| **Issuing Dispute** | `issuing_dispute_read` | Issuing 분쟁을 조회합니다 |
| **Issuing Dispute** | `issuing_dispute_write` | Issuing 분쟁을 생성하거나 제출합니다 |

### 리포팅

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Report Run** | `report_run_read` | 리포트 실행 결과를 조회합니다 |
| **Report Run** | `report_run_write` | 새 리포트 실행을 생성합니다 |
| **Report Type** | `report_type_read` | 사용 가능한 리포트 유형을 조회합니다 |

### 세금

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Tax Calculation** | `tax_calculation_read` | 세금 계산 결과를 조회합니다 |
| **Tax Calculation** | `tax_calculation_write` | 세금 계산을 생성합니다 |
| **Tax Rate** | `tax_rate_read` | 세율 설정을 조회합니다 |
| **Tax Rate** | `tax_rate_write` | 세율을 생성하거나 업데이트합니다 |
| **Tax Registration** | `tax_registration_read` | 세무 등록 상세 정보를 조회합니다 |

### Terminal

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Terminal Reader** | `terminal_reader_read` | 터미널 리더의 상세 정보를 조회합니다 |
| **Terminal Reader** | `terminal_reader_write` | 터미널 리더를 등록하거나 업데이트합니다 |
| **Terminal Location** | `terminal_location_read` | 터미널 위치의 상세 정보를 조회합니다 |
| **Terminal Location** | `terminal_location_write` | 터미널 위치를 생성하거나 업데이트합니다 |

### Secret Store

| 리소스 | 권한 | 설명 |
| --- | --- | --- |
| **Secret** | `secret_read` | Secret Store에 저장된 시크릿을 조회합니다 |
| **Secret** | `secret_write` | 시크릿을 생성, 업데이트, 삭제합니다 |

## Tajo Brevo 연동에 권장되는 권한

Tajo Brevo 연동 앱에는 다음 권한을 권장합니다:

```json
{
  "permissions": [
    {
      "permission": "customer_read",
      "purpose": "Sync customer profiles and contact information to Brevo"
    },
    {
      "permission": "customer_write",
      "purpose": "Store Brevo contact ID and sync status on customer metadata"
    },
    {
      "permission": "charge_read",
      "purpose": "Track purchase events and revenue data for Brevo analytics"
    },
    {
      "permission": "product_read",
      "purpose": "Sync product catalog to Brevo for personalized email campaigns"
    },
    {
      "permission": "event_read",
      "purpose": "Read events to trigger Brevo automation workflows"
    },
    {
      "permission": "invoice_read",
      "purpose": "Track invoice events for transactional emails via Brevo"
    },
    {
      "permission": "subscription_read",
      "purpose": "Monitor subscription lifecycle for Brevo retention campaigns"
    },
    {
      "permission": "secret_write",
      "purpose": "Securely store Brevo API credentials in Stripe Secret Store"
    },
    {
      "permission": "secret_read",
      "purpose": "Retrieve stored Brevo API credentials for data sync operations"
    },
    {
      "permission": "webhook_endpoint_write",
      "purpose": "Register webhook endpoints to deliver events to Tajo"
    }
  ]
}
```

## 권한 적용 범위

앱이 플랫폼 계정에 설치되었는지 연결 계정에 설치되었는지에 따라 권한이 적용되는 범위가 달라집니다:

| 범위 | 설명 |
| --- | --- |
| **Account** | 권한이 설치를 진행한 계정 자체의 데이터에 적용됩니다 |
| **Connected Account** | Connect 플랫폼의 경우 권한이 연결 계정까지 확장될 수 있습니다 |

Caution

쓰기 권한을 요청할 때는 앱이 언제 어떤 방식으로 데이터를 변경하는지 앱 심사 과정에서 정확히 설명할 수 있어야 합니다. 불필요한 쓰기 권한은 반려의 흔한 사유입니다.
