Payabli Bill API

The Bill API from Payabli — 7 operation(s) for bill.

OpenAPI Specification

payabli-bill-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: API reference Bill API
  version: 1.0.0
servers:
- url: https://api-sandbox.payabli.com/api
  description: Sandbox
- url: https://api.payabli.com/api
  description: Production
tags:
- name: Bill
paths:
  /Bill/single/{entry}:
    post:
      operationId: AddBill
      summary: Add bill
      description: Creates a bill in an entrypoint.
      tags:
      - Bill
      parameters:
      - name: entry
        in: path
        description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      - name: idempotencyKey
        in: header
        description: _Optional but recommended_ A unique ID that you can include to prevent duplicating objects or transactions in the case that a request is sent more than once. This key isn't generated in Payabli, you must generate it yourself. This key persists for 2 minutes. After 2 minutes, you can reuse the key if needed.
        required: false
        schema:
          $ref: '#/components/schemas/IdempotencyKey'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BillOutData'
  /Bill/{idBill}:
    get:
      operationId: GetBill
      summary: Get bill
      description: Retrieves a bill by ID from an entrypoint.
      tags:
      - Bill
      parameters:
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetBillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
    put:
      operationId: EditBill
      summary: Update bill
      description: Updates a bill by ID.
      tags:
      - Bill
      parameters:
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EditBillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BillOutData'
    delete:
      operationId: DeleteBill
      summary: Delete bill
      description: Deletes a bill by ID.
      tags:
      - Bill
      parameters:
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
  /Query/bills/{entry}:
    get:
      operationId: ListBills
      summary: Get list of bills for entrypoint
      description: Retrieve a list of bills for an entrypoint. Use filters to limit results. Include the `exportFormat` query parameter to return the results as a file instead of a JSON response.
      tags:
      - Bill
      parameters:
      - name: entry
        in: path
        description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
        required: true
        schema:
          type: string
      - name: exportFormat
        in: query
        description: Export format for file downloads. When specified, returns data as a file instead of JSON.
        required: false
        schema:
          $ref: '#/components/schemas/ExportFormat'
      - name: fromRecord
        in: query
        description: The number of records to skip before starting to collect the result set.
        required: false
        schema:
          type: integer
          default: 0
      - name: limitRecord
        in: query
        description: Max number of records to return for the query. Use `0` or negative value to return all records.
        required: false
        schema:
          type: integer
          default: 20
      - name: parameters
        in: query
        description: "Collection of field names, conditions, and values used to filter the query\n<Info>\n  **You must remove `parameters=` from the request before you send it, otherwise Payabli will ignore the filters.**\n\n  Because of a technical limitation, you can't make a request that includes filters from the API console on this page. The response isn't filtered. Instead, copy the request, remove `parameters=` and run the request in a different client.\n\n  For example:\n\n  --url https://api-sandbox.payabli.com/api/Query/transactions/org/236?parameters=totalAmount(gt)=1000&limitRecord=20\n\n  should become:\n\n  --url https://api-sandbox.payabli.com/api/Query/transactions/org/236?totalAmount(gt)=1000&limitRecord=20\n</Info>\nSee [Filters and Conditions Reference](/developers/developer-guides/pay-ops-reporting-engine-overview#filters-and-conditions-reference) for help.\n\nList of field names accepted:\n- `frequency` (`in`, `nin`, `ne`, `eq`)\n- `method` (`in`, `nin`, `eq`, `ne`)\n- `event` (`in`, `nin`, `eq`, `ne`)\n- `target` (`ct`, `nct`, `eq`, `ne`)\n- `status` (`eq`, `ne`)\n- `approvalUserId` (`eq`, `ne`)\n- `parentOrgId` (`ne`, `eq`, `nin`, `in`)\n- `approvalUserEmail` (`eq`, `ne`)\n- `scheduleId` (`ne`, `eq`)\n\nList of comparison accepted - enclosed between parentheses:\n- `eq` or empty => equal\n- `gt` => greater than\n- `ge` => greater or equal\n- `lt` => less than\n- `le` => less or equal\n- `ne` => not equal\n- `ct` => contains\n- `nct` => not contains\n- `in` => inside array\n- `nin` => not inside array\n\nList of parameters accepted:\n- `limitRecord` : max number of records for query (default=\"20\", \"0\" or negative value for all)\n- `fromRecord` : initial record in query\nExample: `totalAmount(gt)=20` returns all records with a `totalAmount` that's greater than 20.00"
        required: false
        schema:
          type: object
          additionalProperties:
            type:
            - string
            - 'null'
      - name: sortBy
        in: query
        description: The field name to use for sorting results. Use `desc(field_name)` to sort descending by `field_name`, and use `asc(field_name)` to sort ascending by `field_name`.
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillQueryResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
  /Query/bills/org/{orgId}:
    get:
      operationId: ListBillsOrg
      summary: Get list of bills for organization
      description: Retrieve a list of bills for an organization. Use filters to limit results. Include the `exportFormat` query parameter to return the results as a file instead of a JSON response.
      tags:
      - Bill
      parameters:
      - name: orgId
        in: path
        description: The numeric identifier for organization, assigned by Payabli.
        required: true
        schema:
          type: integer
      - name: exportFormat
        in: query
        description: Export format for file downloads. When specified, returns data as a file instead of JSON.
        required: false
        schema:
          $ref: '#/components/schemas/ExportFormat'
      - name: fromRecord
        in: query
        description: The number of records to skip before starting to collect the result set.
        required: false
        schema:
          type: integer
          default: 0
      - name: limitRecord
        in: query
        description: Max number of records to return for the query. Use `0` or negative value to return all records.
        required: false
        schema:
          type: integer
          default: 20
      - name: parameters
        in: query
        description: "Collection of field names, conditions, and values used to filter the query\n<Info>\n  **You must remove `parameters=` from the request before you send it, otherwise Payabli will ignore the filters.**\n\n  Because of a technical limitation, you can't make a request that includes filters from the API console on this page. The response isn't filtered. Instead, copy the request, remove `parameters=` and run the request in a different client.\n\n  For example:\n\n  --url https://api-sandbox.payabli.com/api/Query/transactions/org/236?parameters=totalAmount(gt)=1000&limitRecord=20\n\n  should become:\n\n  --url https://api-sandbox.payabli.com/api/Query/transactions/org/236?totalAmount(gt)=1000&limitRecord=20\n</Info>\nSee [Filters and Conditions Reference](/developers/developer-guides/pay-ops-reporting-engine-overview#filters-and-conditions-reference) for help.\n\nList of field names accepted:\n- `frequency` (in, nin, ne, eq)\n- `method` (in, nin, eq, ne)\n- `event` (in, nin, eq, ne)\n- `target` (ct, nct, eq, ne)\n- `status` (eq, ne)\n- `parentOrgId` (ne, eq, nin, in)\n- `approvalUserId` (eq, ne)\n- `approvalUserEmail` (eq, ne)\n\nList of comparison accepted - enclosed between parentheses:\n- eq or empty => equal\n- gt => greater than\n- ge => greater or equal\n- lt => less than\n- le => less or equal\n- ne => not equal\n- ct => contains\n- nct => not contains\n- in => inside array\n- nin => not inside array\n\nList of parameters accepted:\n- limitRecord : max number of records for query (default=\"20\", \"0\" or negative value for all)\n- fromRecord : initial record in query\n\nExample: totalAmount(gt)=20 return all records with totalAmount greater than 20.00"
        required: false
        schema:
          type: object
          additionalProperties:
            type:
            - string
            - 'null'
      - name: sortBy
        in: query
        description: The field name to use for sorting results. Use `desc(field_name)` to sort descending by `field_name`, and use `asc(field_name)` to sort ascending by `field_name`.
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillQueryResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
  /Bill/attachedFileFromBill/{idBill}/{filename}:
    delete:
      operationId: deleteAttachedFromBill
      summary: Delete attached file from bill
      description: Delete a file attached to a bill.
      tags:
      - Bill
      parameters:
      - name: filename
        in: path
        description: 'The filename in Payabli. Get this from the `zipName` field

          in the `DocumentsRef.filelist` array returned by

          `/api/Bill/{idBill}`. Example: `0_Bill.pdf`.'
        required: true
        schema:
          type: string
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: returnObject
        in: query
        description: When `true`, the response includes the full bill object.
        required: false
        schema:
          type: boolean
          default: false
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
    get:
      operationId: getAttachedFromBill
      summary: Get attached file from bill
      description: Retrieves a file attached to a bill, either as a binary file or as a Base64-encoded string.
      tags:
      - Bill
      parameters:
      - name: filename
        in: path
        description: 'The filename in Payabli. Get this from the `zipName` field

          in the `DocumentsRef.filelist` array returned by

          `/api/Bill/{idBill}`. Example: `0_Bill.pdf`.'
        required: true
        schema:
          type: string
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: returnObject
        in: query
        description: When `true`, the request returns the file content as a Base64-encoded string.
        required: false
        schema:
          type: boolean
          default: false
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: A successful response returns a binary file when `returnObject` is `false`. When `returnObject` is `true`, the response contains the file content as a Base64-encoded string in an object. Due to technical limitations, only the object response is documented here.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FileContent'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
  /Bill/approval/{idBill}:
    post:
      operationId: SendToApprovalBill
      summary: Send a bill to approval
      description: Send a bill to a user or list of users to approve.
      tags:
      - Bill
      parameters:
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: autocreateUser
        in: query
        description: Automatically create the target user for approval if they don't exist.
        required: false
        schema:
          type: boolean
          default: false
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      - name: idempotencyKey
        in: header
        description: _Optional but recommended_ A unique ID that you can include to prevent duplicating objects or transactions in the case that a request is sent more than once. This key isn't generated in Payabli, you must generate it yourself. This key persists for 2 minutes. After 2 minutes, you can reuse the key if needed.
        required: false
        schema:
          $ref: '#/components/schemas/IdempotencyKey'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
    put:
      operationId: ModifyApprovalBill
      summary: Change bill approvers
      description: Modify the list of users the bill is sent to for approval.
      tags:
      - Bill
      parameters:
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModifyApprovalBillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                type: string
  /Bill/approval/{idBill}/{approved}:
    get:
      operationId: SetApprovedBill
      summary: Approve or disapprove a bill
      description: Approve or disapprove a bill by ID.
      tags:
      - Bill
      parameters:
      - name: approved
        in: path
        description: 'String representing the approved status. Accepted values: ''true'' or ''false''.'
        required: true
        schema:
          type: string
      - name: idBill
        in: path
        description: Payabli ID for the bill. Get this ID by querying `/api/Query/bills/` for the entrypoint or the organization.
        required: true
        schema:
          type: integer
      - name: email
        in: query
        description: Email or username of user modifying approval status.
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetApprovedBillResponse'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
components:
  schemas:
    RiskReason:
      type: string
      description: Reason for risk flagging.
      title: RiskReason
    IsSameDayACH:
      type: boolean
      description: 'When `true`, this is a same-day ACH transaction.

        '
      title: IsSameDayACH
    ContactsField:
      type: array
      items:
        $ref: '#/components/schemas/Contacts'
      description: List of contacts.
      title: ContactsField
    AccountId:
      type: string
      description: Custom identifier for payment connector.
      title: AccountId
    BillQueryRecord2BillApprovalsItem:
      type: object
      properties:
        approved:
          type: integer
          description: Indicates whether the bill has been approved. `0` is false, and `1` is true.
        approvedTime:
          type:
          - string
          - 'null'
          format: date-time
          description: Timestamp of when the approval was made, in UTC.
        comments:
          type: string
          description: Additional comments on the approval.
        email:
          $ref: '#/components/schemas/Email'
          description: The approving user's email address.
        Id:
          type: integer
          format: int64
          description: The approving user's ID.
      required:
      - approvedTime
      title: BillQueryRecord2BillApprovalsItem
    SettlementStatusPayout:
      type: string
      description: 'The settlement status of the payout transaction. See

        [Payout Transaction Statuses](/guides/pay-out-status-reference#payout-transaction-statuses)

        for a full reference.

        '
      title: SettlementStatusPayout
    Maskedaccount:
      type: string
      description: 'Masked card or bank account used in transaction. In the case of Apple

        Pay, this is a masked DPAN (device primary account number).

        '
      title: Maskedaccount
    BankName:
      type: string
      description: Name of bank for account.
      title: BankName
    PayabliErrorBodyResponseData:
      type: object
      properties:
        explanation:
          type: string
          description: Human-readable explanation of what happened.
        todoAction:
          type: string
          description: Suggested resolution.
      description: Object with detailed error context.
      title: PayabliErrorBodyResponseData
    RiskFlaggedOn:
      type: string
      format: date-time
      description: Timestamp when the transaction was flagged for risk.
      title: RiskFlaggedOn
    VendorOutData:
      type: object
      properties:
        additionalData:
          $ref: '#/components/schemas/AdditionalData'
        Address1:
          $ref: '#/components/schemas/AddressNullable'
          description: Vendor's street address. Allowed characters are letters, numbers, spaces, and `. ,
        Address2:
          $ref: '#/components/schemas/AddressAddtlNullable'
          description: Additional line for vendor's address, such as a suite or unit number.
        BillingData:
          $ref: '#/components/schemas/BillingData'
          description: Object containing vendor's bank information.
        City:
          type: string
          description: Vendor's city.
        Contacts:
          $ref: '#/components/schemas/ContactsField'
          description: Array of objects describing the vendor's contacts.
        Country:
          type: string
          description: Vendor's country. `US` or `CA`.
        customerVendorAccount:
          type: string
          description: Account number of paypoint in the vendor side.
        EIN:
          type: string
          description: 'EIN/Tax ID for vendor. Must be nine digits formatted as `XX-XXXXXXX`. In responses, this field is masked and looks like: `XXXXX6789`.'
        Email:
          $ref: '#/components/schemas/Email'
          description: Vendor's email address. Required for vCard.
        InternalReferenceId:
          type: integer
          format: int64
          description: Internal identifier for global vendor account.
        LocationCode:
          $ref: '#/components/schemas/LocationCode'
        Mcc:
          $ref: '#/components/schemas/Mcc'
        Name1:
          type: string
          description: Primary name for vendor. Required for new vendor. Allowed characters are letters, numbers, spaces, and `. , ' & ( )
        Name2:
          type: string
          description: Secondary nam

# --- truncated at 32 KB (110 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/payabli/refs/heads/main/openapi/payabli-bill-api-openapi.yml