/v2/store/{storeid}/billing/subscription:
  get:
    tags:
      - billing
      - subscription
    description: data billing subscription
    operationId: loadBillingSubscription
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: "./parameters/storeid.yaml"
    - name: date
      in: query
      description: filter by date
      schema:
        type: string
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: data billing subscription
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BillingSubscription'

/v2/billing/reports:
  get:
    tags:
      - billing
      - subscription
    description: data billing subscription
    operationId: reportBilling
    security:
    - bearerAuth: []
    parameters:
    - name: date
      in: query
      description: filter by date
      schema:
        type: string
    - name: name
      in: query
      description: filter by store name
      schema:
        type: string
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: data billing subscription
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BillingSubscription'
  post:
    tags:
      - billing
    description: Update/Create Billing Report
    operationId: saveBillingReport
    security:
    - bearerAuth: []
    requestBody:
      required: true
      content:
        application/json: 
          schema: 
            $ref: '#/components/schemas/BillingReport'
    responses:
      $ref#4xx: './responses/4xx.yaml'
      $ref#upsert: './responses/20x-upsert.yaml'

/v2/billing/reports/{id}:
  delete:
    tags:
    - billing
    description: Return result delete billing report
    operationId: deleteBillingReport
    security:
    - bearerAuth: []
    parameters:
    - $ref#id: './parameters/objectid.yaml'
    responses:
      $ref#4xx: './responses/4xx.yaml'
      200:
        description: delete billing report
        content:
          application/json:
            schema:
              type: object
              properties: 
                result:
                  type: boolean

/v2/store/{storeid}/billing/station:
  get:
    tags:
      - billing
    description: data billing subscription
    operationId: loadBillingStationByStore
    security:
    - bearerAuth: []
    parameters:
    - $ref#storeid: "./parameters/storeid.yaml"
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: data billing station
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/BillingStation'

/v2/billing/station:
  get:
    tags:
      - billing
    description: data billing station
    operationId: loadBillingStation
    security:
    - bearerAuth: []
    parameters:
    - name: name
      in: query
      description: filter by store name
      schema:
        type: string
    responses:
      $ref#4xx: "./responses/4xx.yaml"
      200:
        description: data billing station
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/BillingStation'