Routable Receivables API

Amounts owed to you by customers.

OpenAPI Specification

routable-receivables-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Routable Companies Receivables API
  description: Specification of the Routable v1 REST API for B2B payments, accounts payable and receivable automation, and mass payouts. Manage vendor and customer companies, contacts, payment methods, funding accounts, payables, receivables, and webhook events. All requests are JSON over HTTPS and authenticated with a Bearer API token.
  termsOfService: https://www.routable.com/terms-of-service/
  contact:
    name: Routable Support
    url: https://developers.routable.com/docs
  version: '1.0'
servers:
- url: https://api.routable.com/v1
  description: Production
security:
- bearerAuth: []
tags:
- name: Receivables
  description: Amounts owed to you by customers.
paths:
  /receivables:
    get:
      operationId: listReceivables
      tags:
      - Receivables
      summary: List receivables
      parameters:
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/StartingAfter'
      responses:
        '200':
          description: A list of receivables.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReceivableList'
    post:
      operationId: createReceivable
      tags:
      - Receivables
      summary: Create a receivable
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReceivableCreate'
      responses:
        '201':
          description: The created receivable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Receivable'
  /receivables/{id}:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    get:
      operationId: retrieveReceivable
      tags:
      - Receivables
      summary: Retrieve a receivable
      responses:
        '200':
          description: The requested receivable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Receivable'
    patch:
      operationId: updateReceivable
      tags:
      - Receivables
      summary: Update a receivable
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReceivableCreate'
      responses:
        '200':
          description: The updated receivable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Receivable'
  /receivables/{id}/cancel:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    post:
      operationId: cancelReceivable
      tags:
      - Receivables
      summary: Cancel a receivable
      responses:
        '200':
          description: The cancelled receivable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Receivable'
  /receivables/{id}/remind:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    post:
      operationId: remindReceivable
      tags:
      - Receivables
      summary: Send a receivable reminder
      responses:
        '200':
          description: Reminder sent.
components:
  parameters:
    Limit:
      name: limit
      in: query
      required: false
      description: Maximum number of records to return per page.
      schema:
        type: integer
        default: 25
    StartingAfter:
      name: starting_after
      in: query
      required: false
      description: Cursor for pagination; the id of the last record on the previous page.
      schema:
        type: string
    IdPath:
      name: id
      in: path
      required: true
      description: The unique identifier of the resource.
      schema:
        type: string
  schemas:
    Receivable:
      type: object
      properties:
        id:
          type: string
        company:
          type: string
          description: The customer company being billed.
        status:
          type: string
          enum:
          - new
          - sent
          - processing
          - completed
          - cancelled
          - failed
        amount:
          type: string
        currency:
          type: string
        reference_code:
          type: string
        due_date:
          type: string
          format: date
        date_created:
          type: string
          format: date-time
    ReceivableList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Receivable'
        pagination:
          $ref: '#/components/schemas/Pagination'
    ReceivableCreate:
      type: object
      required:
      - company
      - amount
      properties:
        company:
          type: string
        amount:
          type: string
        currency:
          type: string
          default: USD
        reference_code:
          type: string
        due_date:
          type: string
          format: date
    Pagination:
      type: object
      properties:
        count:
          type: integer
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'API token presented as `Authorization: Bearer {your_token}`. Generate tokens in the Routable dashboard. A sandbox environment is available for testing without moving real money.'