Loop invoicing-relationships API

The invoicing-relationships API from Loop — 2 operation(s) for invoicing-relationships.

Operations 3

POST /v1/invoicing-relationships Upsert an invoicing relationship #
GET /v1/invoicing-relationships List invoicing relationships #
GET /v1/invoicing-relationships/{qid} Retrieve an invoicing relationship #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/loop-invoicing-relationships-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

loop-invoicing-relationships-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Loop Onboarding artifacts Invoicing Relationships API
  description: HTTP REST API for Loop Payments Onboarding.
  version: '1.0'
  contact: {}
servers:
- url: https://onboarding.api.loop.com
security:
- bearerAuth: []
tags:
- name: invoicing-relationships
paths:
  /v1/invoicing-relationships:
    post:
      description: "Creates or updates a bilateral invoicing relationship between a payee and payor organization, or a default invoicing relationship for a payee or payor organization if the other is not specified. \n\nIf an invoicing relationship is currently active for the passed payee and payor organizations, the existing invoicing relationship will be merged with the passed invoicing relationship."
      operationId: InvoicingRelationships_upsert
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpsertInvoicingRelationshipInput'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvoicingRelationship'
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvoicingRelationship'
      summary: Upsert an invoicing relationship
      tags:
      - invoicing-relationships
    get:
      description: Returns a list of invoicing relationships.
      operationId: InvoicingRelationships_list
      parameters:
      - name: revisedAfter
        required: false
        in: query
        description: Filter to only results that have been revised after this timestamp. This can be a UTC timestamp or a floating date. If a floating date is passed, the timestamp used will be the beginning (midnight UTC) of the date.
        schema:
          format: utc-timestamp
          example: '2020-01-01T00:00:00.000Z'
          type: string
      - name: revisedBefore
        required: false
        in: query
        description: Filter to only results that have been revised before this timestamp. This can be a UTC timestamp or a floating date. If a floating date is passed, the timestamp used will be the beginning (midnight UTC) of the date.
        schema:
          format: utc-timestamp
          example: '2020-01-01T00:00:00.000Z'
          type: string
      - name: first
        required: false
        in: query
        description: The number of results to return. Default value is 10. Any custom value specified must lie between 0 and 100, inclusive.
        schema:
          type: number
      - name: after
        required: false
        in: query
        description: The cursor to start returning results from
        schema:
          type: string
      - name: payorOrganizationQid
        required: false
        in: query
        description: The payor organization QID to filter by
        schema:
          format: qid
          example: qid::organization:0ca6f700-4137-4d09-b44a-43bb8d7900c5
          type: string
      - name: payeeOrganizationQid
        required: false
        in: query
        description: The payee organization QID to filter by
        schema:
          format: qid
          example: qid::organization:0ca6f700-4137-4d09-b44a-43bb8d7900c5
          type: string
      responses:
        '200':
          description: The paginated response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/InvoicingRelationship'
                  pageInfo:
                    type: object
                    properties:
                      hasPreviousPage:
                        type: boolean
                      hasNextPage:
                        type: boolean
                      startCursor:
                        type: string
                      endCursor:
                        type: string
      summary: List invoicing relationships
      tags:
      - invoicing-relationships
  /v1/invoicing-relationships/{qid}:
    get:
      description: Returns the invoicing relationship with the specified QID.
      operationId: InvoicingRelationships_get
      parameters:
      - name: qid
        required: true
        in: path
        description: QID of the entity to retrieve
        schema:
          format: qid
          example: qid::invoicing_relationship:0ca6f700-4137-4d09-b44a-43bb8d7900c5
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvoicingRelationship'
        '404':
          description: Invoicing relationship not found
      summary: Retrieve an invoicing relationship
      tags:
      - invoicing-relationships
components:
  schemas:
    DaysToPayFrom:
      type: string
      enum:
      - ISSUE_DATE
      - RECEIPT_DATE
      description: The anchor date from which we determine the invoice due date.
    InvoicingRelationship:
      type: object
      properties:
        qid:
          type: string
          description: Qualified unique identifier.
          format: qid
          example: qid::invoicing_relationship:0ca6f700-4137-4d09-b44a-43bb8d7900c4
        createdAt:
          type: string
          format: utc-timestamp
          example: '2023-01-01T00:00:00.000Z'
        revisionNumber:
          type: number
          example: 1
        revisionCreatedAt:
          type: string
          format: utc-timestamp
          example: '2023-01-01T00:00:00.000Z'
        payeeOrganizationQid:
          type:
          - string
          - 'null'
          description: Qualified unique identifier.
          example: qid::organization:0ca6f700-4137-4d09-b44a-43bb8d7900c4
          format: qid
        payorOrganizationQid:
          type:
          - string
          - 'null'
          description: Qualified unique identifier.
          example: qid::organization:0ca6f700-4137-4d09-b44a-43bb8d7900c4
          format: qid
        daysToPay:
          type:
          - number
          - 'null'
          description: Number of days until the invoice is due.
          example: 30
        daysToPayFrom:
          description: The anchor date from which we determine the invoice due date.
          allOf:
          - $ref: '#/components/schemas/DaysToPayFrom'
        effectiveFrom:
          type: string
          description: Timestamp indicating when the invoicing relationship is effective.
          example: '2025-05-01T00:00:00.000Z'
          format: utc-timestamp
        effectiveTo:
          type:
          - string
          - 'null'
          description: Timestamp indicating when the invoicing relationship is no longer effective.
          example: '2025-06-01T00:00:00.000Z'
          format: utc-timestamp
      required:
      - qid
      - createdAt
      - revisionNumber
      - revisionCreatedAt
      - payeeOrganizationQid
      - payorOrganizationQid
      - daysToPay
      - daysToPayFrom
      - effectiveFrom
      - effectiveTo
    UpsertInvoicingRelationshipInput:
      type: object
      properties:
        payeeOrganizationQid:
          type:
          - string
          - 'null'
          description: Qualified unique identifier.
          example: qid::organization:0ca6f700-4137-4d09-b44a-43bb8d7900c4
          format: qid
        payorOrganizationQid:
          type:
          - string
          - 'null'
          description: Qualified unique identifier.
          example: qid::organization:0ca6f700-4137-4d09-b44a-43bb8d7900c4
          format: qid
        daysToPay:
          type:
          - number
          - 'null'
          description: Number of days until the invoice is due.
          example: 30
        daysToPayFrom:
          type:
          - string
          - 'null'
          description: The anchor date from which we determine the invoice due date.
          example: ISSUE_DATE
          enum:
          - ISSUE_DATE
          - RECEIPT_DATE
        effectiveFrom:
          type:
          - string
          - 'null'
          description: Timestamp indicating when the invoicing relationship becomes active. This timestamp must be in the future. If not specified, the current timestamp will be used (effective immediately).
          example: '2025-05-01T00:00:00.000Z'
          format: utc-timestamp
        effectiveTo:
          type:
          - string
          - 'null'
          description: Timestamp indicating when the invoicing relationship is no longer active. This timestamp must be after the effectiveFrom timestamp. If not specified, null will be used (effective indefinitely).
          example: '2025-06-01T00:00:00.000Z'
          format: utc-timestamp
      required:
      - payeeOrganizationQid
      - payorOrganizationQid
      - daysToPay
      - daysToPayFrom
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: apiKey
      name: bearerAuth
      type: http
      description: "Bearer HTTP authentication. Allowed headers: \n  Authorization: Bearer <apiKey>"