Shopify · Arazzo Workflow

Shopify Quote to Paid Order

Version 1.0.0

Create a pending (quote-style) order, mark it paid, then read the completed order back.

1 workflow 1 source API 1 provider
View Spec View on GitHub CommerceE-CommercePaymentsRetailShopping CartT1ArazzoWorkflows

Provider

shopify

Workflows

quote-to-paid-order
Create a pending order acting as a quote, then complete it as paid.
Creates a pending order (the quote/draft equivalent), marks it paid to complete it, and reads it back to confirm the financial status and totals.
3 steps inputs: email, note, quantity, variantId outputs: financialStatus, order, orderId, totalPrice
1
createPendingOrder
Create the order in a pending financial state, standing in for a draft order or quote awaiting completion.
2
markPaid
Complete the quote by updating the order's financial status to paid, mirroring a draft order being converted into a real order.
3
getOrder
Read the completed order back to confirm the paid status and totals.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Shopify Quote to Paid Order
  summary: Create a pending (quote-style) order, mark it paid, then read the completed order back.
  description: >-
    Models the draft-order-to-completed-order pattern. Because the published
    Shopify REST description used here does not expose the dedicated DraftOrder
    resource, this flow adapts the pattern: it creates an order in a pending
    financial state (acting as the quote/draft), updates that order to a paid
    financial status to complete it, and then reads the order back so the caller
    can confirm the totals and paid status. Every step spells out its request
    inline so the flow can be read and executed without opening the underlying
    OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-520.40
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-520.40
      capability_name: Order Fulfilment Management
      spec: shopify-orders-api-openapi.yml
      confidence: 0.78
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: ordersApi
  url: ../openapi/shopify-orders-api-openapi.yml
  type: openapi
workflows:
- workflowId: quote-to-paid-order
  summary: Create a pending order acting as a quote, then complete it as paid.
  description: >-
    Creates a pending order (the quote/draft equivalent), marks it paid to
    complete it, and reads it back to confirm the financial status and totals.
  inputs:
    type: object
    required:
    - email
    - variantId
    - quantity
    properties:
      email:
        type: string
        description: Customer email for the order.
      variantId:
        type: integer
        description: The product variant ID to add as a line item.
      quantity:
        type: integer
        description: Quantity of the variant.
      note:
        type: string
        description: An internal note describing the quote.
  steps:
  - stepId: createPendingOrder
    description: >-
      Create the order in a pending financial state, standing in for a draft
      order or quote awaiting completion.
    operationId: createOrder
    requestBody:
      contentType: application/json
      payload:
        order:
          email: $inputs.email
          financial_status: pending
          note: $inputs.note
          line_items:
          - variant_id: $inputs.variantId
            quantity: $inputs.quantity
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      orderId: $response.body#/order/id
      totalPrice: $response.body#/order/total_price
  - stepId: markPaid
    description: >-
      Complete the quote by updating the order's financial status to paid,
      mirroring a draft order being converted into a real order.
    operationId: updateOrder
    parameters:
    - name: order_id
      in: path
      value: $steps.createPendingOrder.outputs.orderId
    requestBody:
      contentType: application/json
      payload:
        order:
          financial_status: paid
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      orderId: $response.body#/order/id
  - stepId: getOrder
    description: Read the completed order back to confirm the paid status and totals.
    operationId: getOrder
    parameters:
    - name: order_id
      in: path
      value: $steps.createPendingOrder.outputs.orderId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      financialStatus: $response.body#/order/financial_status
      totalPrice: $response.body#/order/total_price
      order: $response.body#/order
  outputs:
    orderId: $steps.createPendingOrder.outputs.orderId
    financialStatus: $steps.getOrder.outputs.financialStatus
    totalPrice: $steps.getOrder.outputs.totalPrice
    order: $steps.getOrder.outputs.order

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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 workflow
curl "https://apis.io/api/v1/arazzo/shopify-quote-to-paid-order-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?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.