Stripe · Schema

Stripe Customer

This object represents a customer of your business. Use it to create recurring charges and track payments that belong to the same customer.

CommerceFinancial ServicesFintechPaymentsT1

Properties

Name Type Description
id string Unique identifier for the object.
object string String representing the object's type.
address object The customer's address.
balance integer The current balance, if any, that's stored on the customer. Positive amounts represent the amount the customer owes; negative amounts represent credit.
created integer Time at which the object was created. Measured in seconds since the Unix epoch.
currency stringnull Three-letter ISO code for the currency the customer can be charged in for recurring billing purposes.
default_source stringnull ID of the default payment source for the customer.
delinquent booleannull Whether or not the latest charge for the customer's latest invoice has failed.
description stringnull An arbitrary string attached to the object.
discount object Describes the current discount active on the customer, if there is one.
email stringnull The customer's email address.
invoice_prefix stringnull The prefix for the customer used to generate unique invoice numbers.
invoice_settings objectnull The customer's default invoice settings.
livemode boolean Has the value true if the object exists in live mode or the value false if the object exists in test mode.
metadata object Set of key-value pairs that you can attach to an object.
name stringnull The customer's full name or business name.
next_invoice_sequence integer The suffix of the customer's next invoice number.
phone stringnull The customer's phone number.
preferred_locales array The customer's preferred locales (languages), ordered by preference.
shipping object Mailing and shipping address for the customer.
sources object The customer's payment sources, if any.
subscriptions object The customer's current subscriptions, if any.
tax_exempt stringnull Describes the customer's tax exemption status.
tax_ids object The customer's tax IDs.
test_clock stringnull ID of the test clock that this customer belongs to.
View JSON Schema on GitHub

JSON Schema

stripe-customer.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://stripe.com/schemas/customer",
  "title": "Stripe Customer",
  "description": "This object represents a customer of your business. Use it to create recurring charges and track payments that belong to the same customer.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the object.",
      "pattern": "^cus_"
    },
    "object": {
      "type": "string",
      "const": "customer",
      "description": "String representing the object's type."
    },
    "address": {
      "description": "The customer's address.",
      "oneOf": [
        { "$ref": "#/$defs/address" },
        { "type": "null" }
      ]
    },
    "balance": {
      "type": "integer",
      "description": "The current balance, if any, that's stored on the customer. Positive amounts represent the amount the customer owes; negative amounts represent credit."
    },
    "created": {
      "type": "integer",
      "description": "Time at which the object was created. Measured in seconds since the Unix epoch."
    },
    "currency": {
      "type": ["string", "null"],
      "description": "Three-letter ISO code for the currency the customer can be charged in for recurring billing purposes."
    },
    "default_source": {
      "type": ["string", "null"],
      "description": "ID of the default payment source for the customer."
    },
    "delinquent": {
      "type": ["boolean", "null"],
      "description": "Whether or not the latest charge for the customer's latest invoice has failed."
    },
    "description": {
      "type": ["string", "null"],
      "description": "An arbitrary string attached to the object."
    },
    "discount": {
      "description": "Describes the current discount active on the customer, if there is one.",
      "oneOf": [
        { "$ref": "#/$defs/discount" },
        { "type": "null" }
      ]
    },
    "email": {
      "type": ["string", "null"],
      "description": "The customer's email address.",
      "format": "email"
    },
    "invoice_prefix": {
      "type": ["string", "null"],
      "description": "The prefix for the customer used to generate unique invoice numbers."
    },
    "invoice_settings": {
      "type": ["object", "null"],
      "description": "The customer's default invoice settings.",
      "properties": {
        "custom_fields": {
          "type": ["array", "null"],
          "items": {
            "type": "object",
            "properties": {
              "name": { "type": "string" },
              "value": { "type": "string" }
            }
          }
        },
        "default_payment_method": {
          "type": ["string", "null"]
        },
        "footer": {
          "type": ["string", "null"]
        },
        "rendering_options": {
          "type": ["object", "null"]
        }
      }
    },
    "livemode": {
      "type": "boolean",
      "description": "Has the value true if the object exists in live mode or the value false if the object exists in test mode."
    },
    "metadata": {
      "type": "object",
      "description": "Set of key-value pairs that you can attach to an object.",
      "additionalProperties": {
        "type": "string"
      }
    },
    "name": {
      "type": ["string", "null"],
      "description": "The customer's full name or business name."
    },
    "next_invoice_sequence": {
      "type": "integer",
      "description": "The suffix of the customer's next invoice number."
    },
    "phone": {
      "type": ["string", "null"],
      "description": "The customer's phone number."
    },
    "preferred_locales": {
      "type": "array",
      "description": "The customer's preferred locales (languages), ordered by preference.",
      "items": {
        "type": "string"
      }
    },
    "shipping": {
      "description": "Mailing and shipping address for the customer.",
      "oneOf": [
        { "$ref": "#/$defs/shipping" },
        { "type": "null" }
      ]
    },
    "sources": {
      "type": "object",
      "description": "The customer's payment sources, if any."
    },
    "subscriptions": {
      "type": "object",
      "description": "The customer's current subscriptions, if any."
    },
    "tax_exempt": {
      "type": ["string", "null"],
      "description": "Describes the customer's tax exemption status.",
      "enum": ["exempt", "none", "reverse", null]
    },
    "tax_ids": {
      "type": "object",
      "description": "The customer's tax IDs."
    },
    "test_clock": {
      "type": ["string", "null"],
      "description": "ID of the test clock that this customer belongs to."
    }
  },
  "required": ["id", "object", "created", "livemode", "metadata"],
  "$defs": {
    "address": {
      "type": "object",
      "properties": {
        "city": { "type": ["string", "null"] },
        "country": { "type": ["string", "null"] },
        "line1": { "type": ["string", "null"] },
        "line2": { "type": ["string", "null"] },
        "postal_code": { "type": ["string", "null"] },
        "state": { "type": ["string", "null"] }
      }
    },
    "discount": {
      "type": "object",
      "properties": {
        "id": { "type": "string" },
        "object": { "type": "string", "const": "discount" },
        "coupon": { "type": "object" },
        "customer": { "type": ["string", "null"] },
        "end": { "type": ["integer", "null"] },
        "start": { "type": "integer" },
        "subscription": { "type": ["string", "null"] }
      }
    },
    "shipping": {
      "type": "object",
      "properties": {
        "address": { "$ref": "#/$defs/address" },
        "name": { "type": "string" },
        "phone": { "type": ["string", "null"] }
      }
    }
  }
}