Rutter Acp API

The Acp API from Rutter — 4 operation(s) for acp.

Operations 5

POST /acp/{merchantId}/checkout_sessions Create commerce checkout session #
GET /acp/{merchantId}/checkout_sessions/{id} Fetch commerce checkout session #
POST /acp/{merchantId}/checkout_sessions/{id} Update commerce checkout session #
POST /acp/{merchantId}/checkout_sessions/{id}/cancel Cancel commerce checkout session #
POST /acp/{merchantId}/checkout_sessions/{id}/complete Complete commerce checkout session #

Documentation

Specifications

Schemas & Data

Other Resources

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/rutter:rutter-acp-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

rutter-acp-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Rutter Acp API
  version: '2024-08-31'
  description: The Universal API for all major e-commerce platforms, accounting systems, and payment processors.
servers:
- url: https://production.rutterapi.com/versioned
  description: Production server
- url: https://sandbox.rutterapi.com/versioned
  description: Sandbox server
tags:
- name: Acp
paths:
  /acp/{merchantId}/checkout_sessions:
    post:
      summary: Create commerce checkout session
      operationId: createCommerceCheckoutSession
      parameters:
      - name: merchantId
        in: path
        required: true
        description: The merchant identifier
        schema:
          $ref: '#/components/schemas/ACPCreateCheckoutSessionPathParams/properties/merchantId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ACPCreateCheckoutSessionRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ACPCheckoutSession'
      x-supported-platforms:
      - '*'
      x-sandbox-supported-platforms: []
      tags:
      - Acp
      x-summary-source: derived
  /acp/{merchantId}/checkout_sessions/{id}:
    get:
      summary: Fetch commerce checkout session
      operationId: fetchCommerceCheckoutSession
      parameters:
      - name: id
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/id'
      - name: merchantId
        in: path
        required: true
        description: The merchant identifier
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/merchantId'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ACPCheckoutSession'
      x-supported-platforms:
      - '*'
      x-sandbox-supported-platforms:
      - NETSUITE
      - QUICKBOOKS
      tags:
      - Acp
      x-summary-source: derived
    post:
      summary: Update commerce checkout session
      operationId: updateCommerceCheckoutSession
      parameters:
      - name: id
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/id'
      - name: merchantId
        in: path
        required: true
        description: The merchant identifier
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/merchantId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ACPUpdateCheckoutSessionRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ACPCheckoutSession'
      x-supported-platforms:
      - '*'
      x-sandbox-supported-platforms: []
      tags:
      - Acp
      x-summary-source: derived
  /acp/{merchantId}/checkout_sessions/{id}/cancel:
    post:
      summary: Cancel commerce checkout session
      operationId: cancelCommerceCheckoutSession
      parameters:
      - name: id
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/id'
      - name: merchantId
        in: path
        required: true
        description: The merchant identifier
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/merchantId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ACPCancelCheckoutSessionRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ACPCheckoutSession'
      x-supported-platforms:
      - '*'
      x-sandbox-supported-platforms: []
      tags:
      - Acp
      x-summary-source: derived
  /acp/{merchantId}/checkout_sessions/{id}/complete:
    post:
      summary: Complete commerce checkout session
      operationId: completeCommerceCheckoutSession
      parameters:
      - name: id
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/id'
      - name: merchantId
        in: path
        required: true
        description: The merchant identifier
        schema:
          $ref: '#/components/schemas/ACPCheckoutSessionPathParams/properties/merchantId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ACPCompleteCheckoutSessionRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ACPCompleteCheckoutSessionResponse'
      x-supported-platforms:
      - '*'
      x-sandbox-supported-platforms: []
      tags:
      - Acp
      x-summary-source: derived
components:
  schemas:
    ACPCancelCheckoutSessionRequest:
      type: object
      properties: {}
    ACPCheckoutSessionPathParams:
      type: object
      properties:
        id:
          type: string
        merchantId:
          type: string
          description: The merchant identifier
      required:
      - id
      - merchantId
    ACPCheckoutSession:
      type: object
      properties:
        id:
          type: string
        fulfillment_option_id:
          type: string
        currency:
          type: string
        status:
          type: string
          enum:
          - not_ready_for_payment
          - ready_for_payment
          - completed
          - canceled
        links:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - terms_of_use
                - privacy_policy
                - seller_shop_policies
              value:
                type: string
                format: uri
            required:
            - type
            - value
            additionalProperties: false
        payment_provider:
          type: object
          properties:
            provider:
              type: string
              enum:
              - stripe
              - adyen
            supported_payment_methods:
              type: array
              items:
                type: string
                enum:
                - card
          required:
          - provider
          - supported_payment_methods
          additionalProperties: false
        totals:
          type: array
          items:
            type: object
            properties:
              amount:
                type: integer
                minimum: 0
              display_text:
                type: string
              type:
                type: string
            required:
            - amount
            - display_text
            - type
            additionalProperties: false
        buyer:
          type: object
          properties:
            email:
              type: string
              format: email
              maxLength: 256
            name:
              type: string
              maxLength: 256
            phone_number:
              type: string
          required:
          - email
          - name
          additionalProperties: false
        line_items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              base_amount:
                type: integer
                minimum: 0
              discount:
                type: integer
                minimum: 0
              subtotal:
                type: integer
                minimum: 0
              tax:
                type: integer
                minimum: 0
              total:
                type: integer
                minimum: 0
              item:
                type: object
                properties:
                  id:
                    type: string
                  quantity:
                    type: integer
                    exclusiveMinimum: true
                    minimum: 0
                required:
                - id
                - quantity
                additionalProperties: false
            required:
            - id
            - base_amount
            - discount
            - subtotal
            - tax
            - total
            - item
            additionalProperties: false
        fulfillment_address:
          type: object
          properties:
            city:
              type: string
              maxLength: 60
            country:
              type: string
            line_one:
              type: string
              maxLength: 60
            name:
              type: string
              maxLength: 256
            postal_code:
              type: string
              maxLength: 20
            state:
              type: string
            line_two:
              type: string
              maxLength: 60
            phone_number:
              type: string
          required:
          - city
          - country
          - line_one
          - name
          - postal_code
          - state
          additionalProperties: false
        messages:
          type: array
          items:
            anyOf:
            - type: object
              properties:
                content:
                  type: string
                content_type:
                  type: string
                  enum:
                  - plain
                  - markdown
                param:
                  type: string
                type:
                  type: string
                  enum:
                  - info
              required:
              - content
              - content_type
              - param
              - type
              additionalProperties: false
            - type: object
              properties:
                code:
                  type: string
                content:
                  type: string
                content_type:
                  type: string
                  enum:
                  - plain
                  - markdown
                param:
                  type: string
                type:
                  type: string
                  enum:
                  - error
              required:
              - code
              - content
              - content_type
              - param
              - type
              additionalProperties: false
        fulfillment_options:
          type: array
          items:
            anyOf:
            - type: object
              properties:
                id:
                  type: string
                carrier_info:
                  type: string
                earliest_delivery_time:
                  type: string
                latest_delivery_time:
                  type: string
                subtitle:
                  type: string
                subtotal:
                  type: integer
                  minimum: 0
                tax:
                  type: integer
                title:
                  type: string
                total:
                  type: integer
                type:
                  type: string
                  enum:
                  - shipping
              required:
              - id
              - carrier_info
              - earliest_delivery_time
              - latest_delivery_time
              - subtitle
              - subtotal
              - tax
              - title
              - total
              - type
              additionalProperties: false
            - type: object
              properties:
                id:
                  type: string
                subtotal:
                  type: integer
                  minimum: 0
                tax:
                  type: integer
                title:
                  type: string
                total:
                  type: integer
                type:
                  type: string
                  enum:
                  - digital
                subtitle:
                  type: string
              required:
              - id
              - subtotal
              - tax
              - title
              - total
              - type
              additionalProperties: false
      required:
      - id
      - currency
      - status
      - links
      - payment_provider
      - totals
      - line_items
      - messages
      - fulfillment_options
    ACPUpdateCheckoutSessionRequest:
      type: object
      properties:
        fulfillment_option_id:
          type: string
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              quantity:
                type: integer
                exclusiveMinimum: true
                minimum: 0
            required:
            - id
            - quantity
            additionalProperties: false
        buyer:
          type: object
          properties:
            email:
              type: string
              format: email
              maxLength: 256
            name:
              type: string
              maxLength: 256
            phone_number:
              type: string
          required:
          - email
          - name
          additionalProperties: false
        fulfillment_address:
          type: object
          properties:
            city:
              type: string
              maxLength: 60
            country:
              type: string
            line_one:
              type: string
              maxLength: 60
            name:
              type: string
              maxLength: 256
            postal_code:
              type: string
              maxLength: 20
            state:
              type: string
            line_two:
              type: string
              maxLength: 60
            phone_number:
              type: string
          required:
          - city
          - country
          - line_one
          - name
          - postal_code
          - state
          additionalProperties: false
    ACPCreateCheckoutSessionRequest:
      type: object
      properties:
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              quantity:
                type: integer
                exclusiveMinimum: true
                minimum: 0
            required:
            - id
            - quantity
            additionalProperties: false
          minItems: 1
        buyer:
          type: object
          properties:
            email:
              type: string
              format: email
              maxLength: 256
            name:
              type: string
              maxLength: 256
            phone_number:
              type: string
          required:
          - email
          - name
          additionalProperties: false
        fulfillment_address:
          type: object
          properties:
            city:
              type: string
              maxLength: 60
            country:
              type: string
            line_one:
              type: string
              maxLength: 60
            name:
              type: string
              maxLength: 256
            postal_code:
              type: string
              maxLength: 20
            state:
              type: string
            line_two:
              type: string
              maxLength: 60
            phone_number:
              type: string
          required:
          - city
          - country
          - line_one
          - name
          - postal_code
          - state
          additionalProperties: false
      required:
      - items
    ACPCompleteCheckoutSessionResponse:
      type: object
      properties:
        id:
          type: string
        fulfillment_option_id:
          type: string
        currency:
          type: string
        status:
          type: string
          enum:
          - not_ready_for_payment
          - ready_for_payment
          - completed
          - canceled
        order:
          type: object
          properties:
            id:
              type: string
          required:
          - id
          additionalProperties: true
        links:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - terms_of_use
                - privacy_policy
                - seller_shop_policies
              value:
                type: string
                format: uri
            required:
            - type
            - value
            additionalProperties: false
        payment_provider:
          type: object
          properties:
            provider:
              type: string
              enum:
              - stripe
              - adyen
            supported_payment_methods:
              type: array
              items:
                type: string
                enum:
                - card
          required:
          - provider
          - supported_payment_methods
          additionalProperties: false
        totals:
          type: array
          items:
            type: object
            properties:
              amount:
                type: integer
                minimum: 0
              display_text:
                type: string
              type:
                type: string
            required:
            - amount
            - display_text
            - type
            additionalProperties: false
        buyer:
          type: object
          properties:
            email:
              type: string
              format: email
              maxLength: 256
            name:
              type: string
              maxLength: 256
            phone_number:
              type: string
          required:
          - email
          - name
          additionalProperties: false
        line_items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              base_amount:
                type: integer
                minimum: 0
              discount:
                type: integer
                minimum: 0
              subtotal:
                type: integer
                minimum: 0
              tax:
                type: integer
                minimum: 0
              total:
                type: integer
                minimum: 0
              item:
                type: object
                properties:
                  id:
                    type: string
                  quantity:
                    type: integer
                    exclusiveMinimum: true
                    minimum: 0
                required:
                - id
                - quantity
                additionalProperties: false
            required:
            - id
            - base_amount
            - discount
            - subtotal
            - tax
            - total
            - item
            additionalProperties: false
        fulfillment_address:
          type: object
          properties:
            city:
              type: string
              maxLength: 60
            country:
              type: string
            line_one:
              type: string
              maxLength: 60
            name:
              type: string
              maxLength: 256
            postal_code:
              type: string
              maxLength: 20
            state:
              type: string
            line_two:
              type: string
              maxLength: 60
            phone_number:
              type: string
          required:
          - city
          - country
          - line_one
          - name
          - postal_code
          - state
          additionalProperties: false
        messages:
          type: array
          items:
            anyOf:
            - type: object
              properties:
                content:
                  type: string
                content_type:
                  type: string
                  enum:
                  - plain
                  - markdown
                param:
                  type: string
                type:
                  type: string
                  enum:
                  - info
              required:
              - content
              - content_type
              - param
              - type
              additionalProperties: false
            - type: object
              properties:
                code:
                  type: string
                content:
                  type: string
                content_type:
                  type: string
                  enum:
                  - plain
                  - markdown
                param:
                  type: string
                type:
                  type: string
                  enum:
                  - error
              required:
              - code
              - content
              - content_type
              - param
              - type
              additionalProperties: false
        fulfillment_options:
          type: array
          items:
            anyOf:
            - type: object
              properties:
                id:
                  type: string
                carrier_info:
                  type: string
                earliest_delivery_time:
                  type: string
                latest_delivery_time:
                  type: string
                subtitle:
                  type: string
                subtotal:
                  type: integer
                  minimum: 0
                tax:
                  type: integer
                title:
                  type: string
                total:
                  type: integer
                type:
                  type: string
                  enum:
                  - shipping
              required:
              - id
              - carrier_info
              - earliest_delivery_time
              - latest_delivery_time
              - subtitle
              - subtotal
              - tax
              - title
              - total
              - type
              additionalProperties: false
            - type: object
              properties:
                id:
                  type: string
                subtotal:
                  type: integer
                  minimum: 0
                tax:
                  type: integer
                title:
                  type: string
                total:
                  type: integer
                type:
                  type: string
                  enum:
                  - digital
                subtitle:
                  type: string
              required:
              - id
              - subtotal
              - tax
              - title
              - total
              - type
              additionalProperties: false
      required:
      - id
      - currency
      - status
      - links
      - payment_provider
      - totals
      - line_items
      - messages
      - fulfillment_options
    ACPCreateCheckoutSessionPathParams:
      type: object
      properties:
        merchantId:
          type: string
          description: The merchant identifier
      required:
      - merchantId
    ACPCompleteCheckoutSessionRequest:
      type: object
      properties:
        buyer:
          type: object
          properties:
            email:
              type: string
              format: email
              maxLength: 256
            name:
              type: string
              maxLength: 256
            phone_number:
              type: string
          required:
          - email
          - name
          additionalProperties: false
        payment_data:
          type: object
          properties:
            provider:
              type: string
              enum:
              - stripe
              - adyen
            token:
              type: string
            billing_address:
              type: object
              properties:
                city:
                  type: string
                  maxLength: 60
                country:
                  type: string
                line_one:
                  type: string
                  maxLength: 60
                name:
                  type: string
                  maxLength: 256
                postal_code:
                  type: string
                  maxLength: 20
                state:
                  type: string
                line_two:
                  type: string
                  maxLength: 60
                phone_number:
                  type: string
              required:
              - city
              - country
              - line_one
              - name
              - postal_code
              - state
              additionalProperties: false
          required:
          - provider
          - token
          additionalProperties: false
      required:
      - payment_data