---
title: "Get Stripe integration status"
method: GET
path: "/api/apps/{app_id}/payments/stripe/status"
---

# Get Stripe integration status

`GET /api/apps/{app_id}/payments/stripe/status`

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Reports how far Stripe setup has gone for the app, without returning any credentials.

It covers the [sandbox](/developers/references/apps-api/sections/payments-stripe#from-sandbox-to-live)'s status and claim state, and whether test or live credentials are stored.

If Stripe was never set up, every field but `app_id` comes back `false` or `null`.

Requires read access to the app.

## Path parameters

- `app_id` string, required — ID of the Base44 app.

## Query parameters

- `check_transactions` boolean — Whether to look for any checkout session in sandbox mode. Defaults to `false`.

## Response `200`

Successful Response

- StripeIntegrationStatusResponse — Comprehensive Stripe integration status response.
  - `app_id` string, required — ID of the Base44 app.
  - `stripe_mode` string, nullable — Mode inferred from available credentials and sandbox state. Either `sandbox` or `live`, or `null` when neither is available. Defaults to `null`.
  - `sandbox_status` string, nullable — Stored sandbox status. Either `unclaimed`, `claimed`, or `expired`, or `null` without a sandbox. Defaults to `null`.
  - `sandbox_is_claimable` boolean — Whether the sandbox is unclaimed, has not expired, and has a stored claim link. Defaults to `false`.
  - `sandbox_claim_url` string, nullable — Stored claim link, or `null` when the sandbox is not claimable or you are a workspace viewer. Treat this link as a credential. Defaults to `null`.
  - `sandbox_days_until_expiry` integer, nullable — Whole days until sandbox expiration, or `null` for a claimed sandbox or when no expiration is stored. Defaults to `null`.
  - `sandbox_account_id` string, nullable — Stripe sandbox account ID, or `null` without a sandbox. Defaults to `null`.
  - `test_mode_configured` boolean — Whether test credentials are available. Defaults to `false`.
  - `live_mode_configured` boolean — Whether live credentials or a connected live account are available. This alone does not mean the app has switched to live keys. Defaults to `false`.
  - `live_mode_method` string, nullable — Available live authentication method. Either `direct_keys` or `platform_auth`, or `null` when neither is available. Direct keys take precedence. Defaults to `null`.
  - `live_keys_configured` boolean — Whether live key setup finished completely, including the redeploy that picks up the new keys. A partial failure leaves this `false` even after keys are stored. Defaults to `false`.
  - `live_account_id` string, nullable — Connected live Stripe account ID, or `null` before activation. Defaults to `null`.
  - `has_tested_payment` boolean, nullable — Whether Stripe reports any checkout session when requested in sandbox mode. A failed lookup also reports `false`, and a session does not prove payment. Otherwise `null`. Defaults to `null`.

## Other responses

- `401` — Missing or invalid credentials.
- `403` — The credential is not permitted or you don't have the required app access. A missing app also fails the app access check.
- `404` — The app is outside the credential's granted workspace.
- `409` — The workspace requires an unlocked SSO session.
- `422` — `check_transactions` isn't a valid boolean.

## Changes

- **2026-09-15** `ca10c5ce328c` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/base44/apis/base44-app-management-api/changes/api/apps/:app_id/payments/stripe/status/get.md)

---

[API](https://skmtc.dev/base44/apis/base44-app-management-api.md) · [All operations](https://skmtc.dev/base44/apis/base44-app-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/base44/apis/base44-app-management-api/revisions/5e69adeb8667?raw)
