Teachable · Schema

TeachableTransaction

A financial transaction record for a course purchase on a Teachable school.

Online CoursesE-LearningEducationCourse ManagementEnrollmentsCoachingMembershipsTransaction

Properties

Name Type Description
id integer Unique transaction identifier.
user_id integer ID of the user who made the purchase.
pricing_plan_id integer ID of the pricing plan purchased.
sale_id integer ID of the associated sale record.
created_at string Datetime the transaction record was created.
purchased_at string Datetime the purchase occurred.
charge integer Amount charged in USD in the smallest currency unit (cents).
final_price integer Final price in the currency of choice in the smallest unit.
currency string ISO 4217 currency code.
tax_charge integer Tax amount charged in the smallest currency unit.
revenue integer Net revenue in USD in the smallest currency unit.
status stringnull Transaction status. 'paid' for completed transactions.
has_chargeback boolean Whether the transaction has a chargeback.
chargeback_fee integer Chargeback fee amount in smallest currency unit.
affiliate_id integernull ID of the affiliate who referred the sale, if applicable.
affiliate_fees integer Affiliate commission fees in smallest currency unit.
author_id integernull ID of the course author.
author_fees integer Author fee amount in smallest currency unit.
coupon_id integernull ID of the coupon used, if applicable.
refunded_at stringnull Datetime the transaction was refunded, if applicable.
amount_refunded integer Amount refunded in smallest currency unit.
View JSON Schema on GitHub

JSON Schema

teachable-transaction.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/teachable/main/json-schema/teachable-transaction.json",
  "title": "TeachableTransaction",
  "description": "A financial transaction record for a course purchase on a Teachable school.",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "description": "Unique transaction identifier."
    },
    "user_id": {
      "type": "integer",
      "description": "ID of the user who made the purchase."
    },
    "pricing_plan_id": {
      "type": "integer",
      "description": "ID of the pricing plan purchased."
    },
    "sale_id": {
      "type": "integer",
      "description": "ID of the associated sale record."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "Datetime the transaction record was created."
    },
    "purchased_at": {
      "type": "string",
      "format": "date-time",
      "description": "Datetime the purchase occurred."
    },
    "charge": {
      "type": "integer",
      "description": "Amount charged in USD in the smallest currency unit (cents)."
    },
    "final_price": {
      "type": "integer",
      "description": "Final price in the currency of choice in the smallest unit."
    },
    "currency": {
      "type": "string",
      "description": "ISO 4217 currency code."
    },
    "tax_charge": {
      "type": "integer",
      "description": "Tax amount charged in the smallest currency unit."
    },
    "revenue": {
      "type": "integer",
      "description": "Net revenue in USD in the smallest currency unit."
    },
    "status": {
      "type": ["string", "null"],
      "description": "Transaction status. 'paid' for completed transactions."
    },
    "has_chargeback": {
      "type": "boolean",
      "description": "Whether the transaction has a chargeback."
    },
    "chargeback_fee": {
      "type": "integer",
      "description": "Chargeback fee amount in smallest currency unit."
    },
    "affiliate_id": {
      "type": ["integer", "null"],
      "description": "ID of the affiliate who referred the sale, if applicable."
    },
    "affiliate_fees": {
      "type": "integer",
      "description": "Affiliate commission fees in smallest currency unit."
    },
    "author_id": {
      "type": ["integer", "null"],
      "description": "ID of the course author."
    },
    "author_fees": {
      "type": "integer",
      "description": "Author fee amount in smallest currency unit."
    },
    "coupon_id": {
      "type": ["integer", "null"],
      "description": "ID of the coupon used, if applicable."
    },
    "refunded_at": {
      "type": ["string", "null"],
      "format": "date-time",
      "description": "Datetime the transaction was refunded, if applicable."
    },
    "amount_refunded": {
      "type": "integer",
      "description": "Amount refunded in smallest currency unit."
    }
  },
  "required": ["id", "user_id", "pricing_plan_id", "created_at", "charge", "currency"]
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/teachable-transaction"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.