DataContractGate

Cloud Free needs no credit card

Sign inSign up
← Catalog
Payments

Stripe — data contract (compatible with Stripe’s documented schema; not affiliated with Stripe)

Stripe Charge object — core fields of an exported Stripe charge. Compatible with Stripe's API Charge object; not affiliated with Stripe.

Validate a client's Stripe export at ingest into your warehouse, or with POST /egress before sending the same shape to a partner, reverse ETL, or an AI agent.

Download YAML

Also available: ODCS v3.1.0 YAML. “Use this contract” forks it into your org, then opens the validation playground so you can upload the client file.

Fields

NameTypeRequiredRuleDescription
idstringrequiredpattern /^(ch|py)_[A-Za-z0-9]+$/Charge id. Card charges use the ch_ prefix. Some bank-debit charges and Connect payment objects returned by the Charges API use py_. Other Stripe prefixes do not belong on this field.
objectstringrequiredone of: charge—
amountintegerrequired≥ 0Amount intended to be collected, in the smallest currency unit (e.g. cents).
amount_capturedintegeroptional≥ 0—
amount_refundedintegeroptional≥ 0—
currencystringrequiredpattern /^[a-z]{3}$/Three-letter ISO currency code, lowercase.
customerstringoptionalpattern /^cus_[A-Za-z0-9]+$/—
descriptionstringoptional——
paidbooleanrequired——
refundedbooleanrequired——
capturedbooleanoptional——
statusstringrequiredone of: succeeded, pending, failedThe status of the payment.
createdintegerrequired≥ 0Time at which the object was created (Unix epoch seconds).
livemodebooleanoptional——
receipt_emailstringoptionalemail format—
payment_intentstringoptionalpattern /^pi_[A-Za-z0-9]+$/—

Sample rows

Three synthetic rows we wrote. They validate against this contract with zero violations. No real customer data.

[
  {
    "amount": 4200,
    "amount_captured": 4200,
    "amount_refunded": 0,
    "captured": true,
    "created": 1731000000,
    "currency": "usd",
    "customer": "cus_Example0001",
    "description": "Invoice INV-1001",
    "id": "ch_3Oexample0001AbCdEfGh",
    "livemode": false,
    "object": "charge",
    "paid": true,
    "payment_intent": "pi_3Oexample0001",
    "receipt_email": "customer@example.com",
    "refunded": false,
    "status": "succeeded"
  },
  {
    "amount": 1599,
    "amount_captured": 0,
    "amount_refunded": 0,
    "captured": false,
    "created": 1731003600,
    "currency": "eur",
    "description": "Pending subscription charge",
    "id": "py_3Oexample0002IjKlMnOp",
    "object": "charge",
    "paid": false,
    "refunded": false,
    "status": "pending"
  },
  {
    "amount": 9900,
    "amount_captured": 9900,
    "amount_refunded": 9900,
    "captured": true,
    "created": 1731090000,
    "currency": "gbp",
    "customer": "cus_Example0003",
    "description": "Refunded order 5582",
    "id": "ch_3Oexample0003QrStUvWx",
    "object": "charge",
    "paid": true,
    "receipt_email": "refunds@example.com",
    "refunded": true,
    "status": "succeeded"
  }
]

Provenance

Checked
2026-11-06
Version
v1.0
Author
DataContractGate
License
MIT

Spotted a mismatch with the vendor’s current schema? Report an issue.

Stripe, Shopify, QuickBooks, Xero, HubSpot, Salesforce, Google Analytics and Square are trademarks of their respective owners. DataContractGate is not affiliated with or endorsed by them. These contracts describe data shaped like these vendors’ documented schemas; they are not official and are not certified by any vendor.