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

# Get Pricing Templates

> Retrieve all pricing templates configured in the workspace. Pass `serviceCode` to fetch a single specific template; omit it to get all.



## OpenAPI

````yaml POST /billspree/services/get-services
openapi: 3.1.0
info:
  title: Billspree API
  description: REST API for Billspree — billing, AR management, and workspace operations.
  version: 1.0.0
servers:
  - url: https://{workspace}.spreesuite.com
    variables:
      workspace:
        default: your-workspace
        description: Your organization's subdomain (e.g. demo → demo.spreesuite.com)
security:
  - apiKeyAuth: []
paths:
  /billspree/services/get-services:
    post:
      tags:
        - Pricing Templates
      summary: Get Pricing Templates
      description: >-
        Retrieve all pricing templates configured in the workspace. Pass
        `serviceCode` to fetch a single specific template; omit it to get all.
      operationId: getServices
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetServicesRequest'
            example:
              method: Retrieve
              action: Retrieve Packages
              apiVersion: v2
      responses:
        '200':
          description: Packages retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetServicesResponse'
              example:
                success: true
                statusCode: 200
                message: Request Succeeded.
                error: null
                data:
                  services:
                    - serviceID: 1
                      appCode: 200
                      serviceCode: '11232200'
                      serviceLabel: Metered Billing
                      serviceType: Sale
                      chargingType: Postpaid
                      billingCycleLookupID: 4
                      dueDateOffset: 10
                      postBilling: 1
                      postType: Post Subscription
                      paymentSettlementMethod: Chronology
                      cashAccountID: 0
                      businessUnitID: 1
                      securityDeposit: null
                      description: N/A
                      requiredDocs: null
                      templateID: 0
                      templateName: ''
                      emailTemplateID: null
                      emailTemplateName: null
                      archiveStatus: 1
                      ts: 1
                      createdAt: '2026-05-19 08:04:52'
                      createdBy: hello@demo.com
                      modifiedAt: '2026-06-02 07:31:05'
                      modifiedBy: hello@demo.com
components:
  schemas:
    GetServicesRequest:
      type: object
      required:
        - method
        - action
        - apiVersion
      properties:
        method:
          type: string
          description: Always `"Retrieve"` for this call
          example: Retrieve
        action:
          type: string
          description: Always `"Retrieve Packages"` for this call
          example: Retrieve Packages
        apiVersion:
          type: string
          description: Always `"v2"`
          example: v2
        serviceCode:
          type: string
          description: Pass to fetch a single specific template; omit to get all
    GetServicesResponse:
      type: object
      properties:
        success:
          type: boolean
        statusCode:
          type: integer
        message:
          type: string
        error:
          nullable: true
        data:
          type: object
          properties:
            services:
              type: array
              items:
                $ref: '#/components/schemas/Service'
    Service:
      type: object
      properties:
        serviceID:
          type: integer
          description: Internal unique ID of the pricing template
        appCode:
          type: integer
          description: Platform module code (200 = Billspree)
        serviceCode:
          type: string
          description: >-
            User-defined unique code for this template — used when creating
            subscriptions or scoping bill fetches
        serviceLabel:
          type: string
          description: Display name of the pricing template
        serviceType:
          type: string
          description: Type of service — e.g. `"Sale"`
        chargingType:
          type: string
          description: '`"Postpaid"` or `"Prepaid"`'
        billingCycleLookupID:
          type: integer
          description: >-
            ID referencing the billing cycle (e.g. monthly, quarterly) — resolve
            via the lookups API
        dueDateOffset:
          type: integer
          description: Number of days after bill generation that payment is due
        postBilling:
          type: integer
          description: '`1` = bill is posted after processing, `0` = draft only'
        postType:
          type: string
          description: When billing is triggered — e.g. `"Post Subscription"`
        paymentSettlementMethod:
          type: string
          description: How payments are applied — e.g. `"Chronology"` (oldest bills first)
        cashAccountID:
          type: integer
          description: Linked cash/bank account ID for payments (`0` = none)
        businessUnitID:
          type: integer
          description: Business unit this template belongs to
        securityDeposit:
          type: number
          nullable: true
          description: Security deposit amount if applicable
        description:
          type: string
          description: Description of the template
        requiredDocs:
          nullable: true
          description: Required documents for this service, if any
        templateID:
          type: integer
          description: Linked bill print template ID (`0` = none)
        templateName:
          type: string
          description: Name of the linked bill print template
        emailTemplateID:
          type: integer
          nullable: true
          description: Linked email template for bill delivery
        emailTemplateName:
          type: string
          nullable: true
          description: Name of the linked email template
        archiveStatus:
          type: integer
          description: >-
            `0` = active, `1` = archived — archived templates cannot be used for
            new subscriptions but appear on historical records
        createdAt:
          type: string
          description: Creation timestamp
        createdBy:
          type: string
          description: Email of user who created it
        modifiedAt:
          type: string
          description: Last modified timestamp
        modifiedBy:
          type: string
          description: Email of user who last modified it
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Auth token returned from the login endpoint. Send as: `Authorization:
        <token>` (no Bearer prefix)

````