Brushfire PaymentProfiles API

The PaymentProfiles API from Brushfire — 4 operation(s) for paymentprofiles.

OpenAPI Specification

brushfire-paymentprofiles-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: 'Brushfire API: Version 2025-07-22 AccessCodes PaymentProfiles API'
  version: '2025-07-22'
  description: 'The Brushfire REST API provides programmatic access to the Brushfire event ticketing and registration platform. It covers events, ticket types, sections and seats, attendees, orders, the shopping cart and checkout flow, groups, sessions and check-in, promotions and access codes, payment profiles, and webhooks (Hooks). Authenticate by sending your App Key (requested at https://developer.brushfire.com/key) in the Authorization header. The API is date-versioned: send the desired version in the api-version request header (for example, 2025-07-22). This document is the live specification published at api.brushfire.com/swagger.'
  contact:
    name: Brushfire Developers
    url: https://developer.brushfire.com
servers:
- url: https://api.brushfire.com
  description: Brushfire API (date-versioned via the api-version header)
tags:
- name: PaymentProfiles
paths:
  /paymentprofiles:
    get:
      tags:
      - PaymentProfiles
      summary: Returns all payment profiles for the specified client
      parameters:
      - name: clientId
        in: query
        description: A string, a GUID, or an integer that corresponds to a specific client
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PaymentProfileListOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PaymentProfileListOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /paymentprofiles/{paymentProfileId}:
    get:
      tags:
      - PaymentProfiles
      summary: Returns the details of the specified payment profile
      parameters:
      - name: paymentProfileId
        in: path
        description: A GUID that corresponds to a specific payment profile
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentProfileSingleOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/PaymentProfileSingleOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /paymentprofiles/{paymentProfileId}/locations:
    get:
      tags:
      - PaymentProfiles
      summary: Returns the locations associated with the merchant ID of a given payment profile.
      parameters:
      - name: paymentProfileId
        in: path
        description: A GUID that corresponds to a specific payment profile
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LocationSingleOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LocationSingleOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
  /paymentprofiles/{paymentProfileId}/terminals:
    get:
      tags:
      - PaymentProfiles
      summary: Returns all terminals registered to the account associated with the supplied payment profile
      parameters:
      - name: paymentProfileId
        in: path
        description: A GUID that corresponds to a specific payment profile
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TerminalOutput'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TerminalOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
    post:
      tags:
      - PaymentProfiles
      summary: Add a terminal to the supplied payment profile
      parameters:
      - name: paymentProfileId
        in: path
        description: A GUID that corresponds to a specific payment profile
        required: true
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TerminalCreateInput'
          text/json:
            schema:
              $ref: '#/components/schemas/TerminalCreateInput'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/TerminalCreateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TerminalCreateOutput'
            text/json:
              schema:
                $ref: '#/components/schemas/TerminalCreateOutput'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
            text/json:
              schema:
                $ref: '#/components/schemas/ApiModelError'
      security:
      - apiKey: []
components:
  schemas:
    PaymentMethodListOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        Name:
          type: string
          nullable: true
        IsEnabled:
          type: boolean
      additionalProperties: false
    PaymentProfileConfigOutput:
      type: object
      properties:
        LocationId:
          type: string
          nullable: true
        LocationName:
          type: string
          nullable: true
        MerchantId:
          type: string
          nullable: true
        MerchantName:
          type: string
          nullable: true
        AccessToken:
          type: string
          nullable: true
        Currency:
          type: string
          nullable: true
        InternalDescription:
          type: string
          nullable: true
        Invoice:
          $ref: '#/components/schemas/PaymentProfileConfigInvoiceItem'
        Scopes:
          type: array
          items:
            type: string
          nullable: true
        Status:
          type: string
          nullable: true
        AllowCards:
          type: boolean
        AllowWallets:
          type: boolean
        AllowAch:
          type: boolean
        AllowAfterpay:
          type: boolean
        AllowCashApp:
          type: boolean
        AllowGiftCards:
          type: boolean
      additionalProperties: false
    TerminalOutput:
      type: object
      properties:
        Id:
          type: string
          nullable: true
        SerialNumber:
          type: string
          nullable: true
        Name:
          type: string
          nullable: true
        Display:
          type: string
          nullable: true
      additionalProperties: false
    StringStringKeyValuePair:
      type: object
      properties:
        Key:
          type: string
          nullable: true
        Value:
          type: string
          nullable: true
      additionalProperties: false
    TerminalCreateOutput:
      type: object
      properties:
        Id:
          type: string
          nullable: true
        SerialNumber:
          type: string
          nullable: true
        PairingCode:
          type: string
          nullable: true
      additionalProperties: false
    TerminalCreateInput:
      type: object
      properties:
        LocationId:
          type: string
          nullable: true
        PairingCode:
          type: string
          nullable: true
      additionalProperties: false
    PaymentProfileSingleOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        Name:
          type: string
          nullable: true
        AccountName:
          type: string
          nullable: true
        GatewayId:
          type: string
          format: uuid
        GatewayName:
          type: string
          nullable: true
        SupportsAutoFees:
          type: boolean
        SupportsSideloading:
          type: boolean
        AllowsReferenceSales:
          type: boolean
        AllowsStandaloneCredits:
          type: boolean
        ReferenceDayLimit:
          type: integer
          format: int32
        Options:
          type: object
          additionalProperties:
            type: string
            nullable: true
          nullable: true
        ElectronicPaymentMethods:
          type: array
          items:
            $ref: '#/components/schemas/PaymentMethodListOutput'
          nullable: true
        Config:
          $ref: '#/components/schemas/PaymentProfileConfigOutput'
      additionalProperties: false
    ApiModelError:
      type: object
      properties:
        Errors:
          type: array
          items:
            $ref: '#/components/schemas/StringStringKeyValuePair'
          nullable: true
        Message:
          type: string
          nullable: true
        Data:
          nullable: true
        StackTrace:
          type: string
          nullable: true
      additionalProperties: false
    PaymentProfileConfigInvoiceItem:
      type: object
      properties:
        AllowAdmin:
          type: boolean
        AllowInternet:
          type: boolean
        RelativeDays:
          type: integer
          format: int32
      additionalProperties: false
    LocationSingleOutput:
      type: object
      properties:
        Id:
          type: string
          nullable: true
        Name:
          type: string
          nullable: true
        Address:
          type: string
          nullable: true
          readOnly: true
        IsSelected:
          type: boolean
        IsActive:
          type: boolean
      additionalProperties: false
    PaymentProfileListOutput:
      type: object
      properties:
        Id:
          type: string
          format: uuid
        Name:
          type: string
          nullable: true
        AccountName:
          type: string
          nullable: true
        GatewayId:
          type: string
          format: uuid
        GatewayName:
          type: string
          nullable: true
        SupportsAutoFees:
          type: boolean
        SupportsSideloading:
          type: boolean
        AllowsReferenceSales:
          type: boolean
        AllowsStandaloneCredits:
          type: boolean
        ReferenceDayLimit:
          type: integer
          format: int32
        Options:
          type: object
          additionalProperties:
            type: string
            nullable: true
          nullable: true
        ElectronicPaymentMethods:
          type: array
          items:
            $ref: '#/components/schemas/PaymentMethodListOutput'
          nullable: true
        Config:
          $ref: '#/components/schemas/PaymentProfileConfigOutput'
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: apiKey
      description: The App Key you received from https://developer.brushfire.com/key
      name: Authorization
      in: header