> ## Documentation Index
> Fetch the complete documentation index at: https://docs.steppay.kr/llms.txt
> Use this file to discover all available pages before exploring further.

# 청구서 생성

> 청구서를 생성할 때 호출합니다.



## OpenAPI

````yaml /steppay_v1.json post /api/v1/invoices
openapi: 3.0.1
info:
  title: STEPPAY
  version: '1.0'
  contact:
    name: Steppay
    url: https://www.steppay.kr
    email: contact@steppay.kr
servers:
  - url: https://api.steppay.kr
    description: Generated server url
security:
  - Secret-Token: []
paths:
  /api/v1/invoices:
    post:
      tags:
        - 청구서 API
      summary: 청구서 생성
      description: 청구서를 생성할 때 호출합니다.
      operationId: v1_createInvoice
      parameters:
        - name: temporary
          in: query
          description: 임시 저장 여부. 임시 저장은 청구서가 발송되지 않습니다.
          required: false
          schema:
            type: boolean
            default: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InvoiceCreateDTO'
        required: true
      responses:
        '201':
          description: 정상적으로 생성됨
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/InvoiceResponseDTO'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ProductErrorresponse'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ProductErrorresponse'
components:
  schemas:
    InvoiceCreateDTO:
      title: 청구서 생성 데이터
      required:
        - customerId
        - discount
        - invoicePayMethods
        - items
        - paymentGateway
        - publishMethods
        - publishType
      type: object
      properties:
        customerId:
          minimum: 0
          type: integer
          description: 청구서를 받을 고객 번호
          format: int64
        items:
          minLength: 1
          type: array
          description: 청구 상품 및 가격플랜 목록
          items:
            $ref: '#/components/schemas/InvoiceProductDTO'
        publishType:
          type: string
          description: 청구서 발행 타입
          enum:
            - NOW
            - RESERVATION
          default: NOW
        purchaseDeadline:
          type: string
          description: 결제 링크 유효 기간을 나타냅니다. ISO 8601 형식
          format: date-time
        reservationAt:
          type: string
          description: 발송 시간을 나타냅니다. ISO 8601 형식
          format: date-time
        publishMethods:
          type: array
          description: 사용할 발송 수단 목록
          items:
            type: string
            description: 사용할 발송 수단 목록
            enum:
              - KAKAO
              - SMS
              - EMAIL
        invoicePayMethods:
          type: array
          description: 지정 결제 수단
          items:
            type: string
            description: 지정 결제 수단
            enum:
              - CARD
              - VBANK
              - BANK
              - BANK_TRANSFER
              - CELLPHONE
              - SIMPLE_PAY
              - CMS
              - CARD_BILL
              - CELLPHONE_BILL
              - CMS_BILL
              - PAYPAL
        discount:
          minimum: 0
          exclusiveMinimum: false
          type: number
          description: 할인 금액
          default: 0
        instantAmount:
          minimum: 0
          exclusiveMinimum: false
          type: number
          description: 청구서 즉시 결제
        memoToCustomer:
          type: string
          description: 청구서 메모
        paymentGateway:
          type: string
          description: 결제 화면에서 결제 할 수 있는 PG사를 고정합니다.
          enum:
            - NAVER
            - DANAL
            - KAKAO
            - KG
            - KCP
            - NICE
            - JT
            - GOOGLE
            - BANKPAY
            - BLUEWALNUT
            - KSNET
            - TOSS
            - EXIMBAY
            - SETTLE
            - DAOUDATA
            - WELCOME
            - NICE_V2
            - STRIPE
            - PAYPLE
            - PAYPLE_GLOBAL
            - KICC
            - EMPTY
            - STEPPAY
            - UNKNOWN
        region:
          type: string
          description: 청구서 판매 Region
          enum:
            - AD
            - AE
            - AF
            - AG
            - AI
            - AL
            - AM
            - AO
            - AQ
            - AR
            - AS
            - AT
            - AU
            - AW
            - AX
            - AZ
            - BA
            - BB
            - BD
            - BE
            - BF
            - BG
            - BH
            - BI
            - BJ
            - BL
            - BM
            - BN
            - BO
            - BQ
            - BR
            - BS
            - BT
            - BV
            - BW
            - BY
            - BZ
            - CA
            - CC
            - CD
            - CF
            - CG
            - CH
            - CI
            - CK
            - CL
            - CM
            - CN
            - CO
            - CR
            - CU
            - CV
            - CW
            - CX
            - CY
            - CZ
            - DE
            - DJ
            - DK
            - DM
            - DO
            - DZ
            - EC
            - EE
            - EG
            - EH
            - ER
            - ES
            - ET
            - FI
            - FJ
            - FK
            - FM
            - FO
            - FR
            - GA
            - GB
            - GD
            - GE
            - GF
            - GG
            - GH
            - GI
            - GL
            - GM
            - GN
            - GP
            - GQ
            - GR
            - GS
            - GT
            - GU
            - GW
            - GY
            - HK
            - HM
            - HN
            - HR
            - HT
            - HU
            - ID
            - IE
            - IL
            - IM
            - IN
            - IO
            - IQ
            - IR
            - IS
            - IT
            - JE
            - JM
            - JO
            - JP
            - KE
            - KG
            - KH
            - KI
            - KM
            - KN
            - KP
            - KR
            - KW
            - KY
            - KZ
            - LA
            - LB
            - LC
            - LI
            - LK
            - LR
            - LS
            - LT
            - LU
            - LV
            - LY
            - MA
            - MC
            - MD
            - ME
            - MF
            - MG
            - MH
            - MK
            - ML
            - MM
            - MN
            - MO
            - MP
            - MQ
            - MR
            - MS
            - MT
            - MU
            - MV
            - MW
            - MX
            - MY
            - MZ
            - NA
            - NC
            - NE
            - NF
            - NG
            - NI
            - NL
            - 'NO'
            - NP
            - NR
            - NU
            - NZ
            - OM
            - PA
            - PE
            - PF
            - PG
            - PH
            - PK
            - PL
            - PM
            - PN
            - PR
            - PS
            - PT
            - PW
            - PY
            - QA
            - RE
            - RO
            - RS
            - RU
            - RW
            - SA
            - SB
            - SC
            - SD
            - SE
            - SG
            - SH
            - SI
            - SJ
            - SK
            - SL
            - SM
            - SN
            - SO
            - SR
            - SS
            - ST
            - SV
            - SX
            - SY
            - SZ
            - TC
            - TD
            - TF
            - TG
            - TH
            - TJ
            - TK
            - TL
            - TM
            - TN
            - TO
            - TR
            - TT
            - TV
            - TW
            - TZ
            - UA
            - UG
            - UM
            - US
            - US_ALABAMA
            - US_ALASKA
            - US_ARIZONA
            - US_ARKANSAS
            - US_CALIFORNIA
            - US_COLORADO
            - US_CONNECTICUT
            - US_DELAWARE
            - US_FLORIDA
            - US_GEORGIA
            - US_HAWAII
            - US_IDAHO
            - US_ILLINOIS
            - US_INDIANA
            - US_IOWA
            - US_KANSAS
            - US_KENTUCKY
            - US_LOUISIANA
            - US_MAINE
            - US_MARYLAND
            - US_MASSACHUSETTS
            - US_MICHIGAN
            - US_MINNESOTA
            - US_MISSISSIPPI
            - US_MISSOURI
            - US_MONTANA
            - US_NEBRASKA
            - US_NEVADA
            - US_NEW_HAMPSHIRE
            - US_NEW_JERSEY
            - US_NEW_MEXICO
            - US_NEW_YORK
            - US_NORTH_CAROLINA
            - US_NORTH_DAKOTA
            - US_OHIO
            - US_OKLAHOMA
            - US_OREGON
            - US_PENNSYLVANIA
            - US_RHODE_ISLAND
            - US_SOUTH_CAROLINA
            - US_SOUTH_DAKOTA
            - US_TENNESSEE
            - US_TEXAS
            - US_UTAH
            - US_VERMONT
            - US_VIRGINIA
            - US_WASHINGTON
            - US_WEST_VIRGINIA
            - US_WISCONSIN
            - US_WYOMING
            - UY
            - UZ
            - VA
            - VC
            - VE
            - VG
            - VI
            - VN
            - VU
            - WF
            - WS
            - YE
            - YT
            - ZA
            - ZM
            - ZW
        currency:
          type: string
          description: 청구서 승인 통화
      description: 청구서 생성 데이터
    InvoiceResponseDTO:
      title: 청구서 생성 응답 정보
      required:
        - id
      type: object
      properties:
        id:
          type: integer
          description: 청구서 번호
          format: int64
    ProductErrorresponse:
      required:
        - errorCode
      type: object
      properties:
        traceId:
          type: string
        errorCode:
          type: string
        errorMessage:
          type: string
        details:
          $ref: '#/components/schemas/ReturnError'
    InvoiceProductDTO:
      title: 청구서 상품 및 가격플랜 정보
      required:
        - minimumQuantity
        - priceCode
        - productCode
      type: object
      properties:
        productCode:
          type: string
          description: 상품 코드
        priceCode:
          type: string
          description: 가격 플랜 코드
        minimumQuantity:
          type: integer
          description: 최소 수량. 청구서를 받은 고객은 이 수량보다 적은 수량으로 구매할 수 없습니다.
          format: int32
        maximumQuantity:
          type: integer
          description: 최대 수량. 청구서를 받은 고객은 이 수량보다 많은 수량으로 구매할 수 없습니다.
          format: int32
        productName:
          type: string
          description: 상품명
        price:
          type: number
          description: 가격
      description: 청구서 상품 및 가격 플랜 목록
    ReturnError:
      type: object
  securitySchemes:
    Secret-Token:
      type: apiKey
      in: header
      name: Secret-Token

````