{"_id":"@aquaqa/stripe-plugin","_rev":"2-279b765932657bb11cb6d29d2d30d7ce","name":"@aquaqa/stripe-plugin","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0-prerelease":{"name":"@aquaqa/stripe-plugin","version":"0.1.0-prerelease","keywords":["aqua","qa","stripe","plugin"],"author":{"name":"satetsu888"},"license":"MIT","_id":"@aquaqa/stripe-plugin@0.1.0-prerelease","maintainers":[{"name":"satetsu888","email":"satetsu888@gmail.com"}],"homepage":"https://github.com/satetsu888/aqua-cli#readme","bugs":{"url":"https://github.com/satetsu888/aqua-cli/issues"},"dist":{"shasum":"473d495ecfbc3476efb79508a16113b34467b95f","tarball":"https://registry.npmjs.org/@aquaqa/stripe-plugin/-/stripe-plugin-0.1.0-prerelease.tgz","fileCount":5,"integrity":"sha512-miXkNEW9Gppx5TRT5DUqYe20DNBUDOz3Oh/1Ra9g6d5IGsfn6IDyh4YZLYX/zkQKmFB/ZqyZvyxH+xChcUV6wg==","signatures":[{"sig":"MEUCIFewTNmYk6mMabrbMyMUn0fa6ogUA9SV29rOYClE6tkVAiEAuRFtAeZSjWieVnsUgs3FUZFTdSBHR0Tq2k5cYnkXH8I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18179},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.18.1"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"833dcead902a6c277947bd6defef793c2c9bb0a4","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"satetsu888","email":"satetsu888@gmail.com"},"repository":{"url":"git+https://github.com/satetsu888/aqua-cli.git","type":"git","directory":"packages/stripe-plugin"},"_npmVersion":"10.8.1","description":"Stripe plugin for aqua QA - verify Stripe resource states in QA plans","directories":{},"_nodeVersion":"22.4.1","dependencies":{"stripe":"^17.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^3.25.0","tsup":"^8.5.1","@aquaqa/cli":"*","@types/node":"^20.0.0"},"peerDependencies":{"@aquaqa/cli":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/stripe-plugin_0.1.0-prerelease_1774176389871_0.1837852414950909","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@aquaqa/stripe-plugin","version":"0.1.0","description":"Stripe plugin for aqua QA - verify Stripe resource states in QA plans","type":"module","main":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"repository":{"type":"git","url":"git+https://github.com/satetsu888/aqua-cli.git","directory":"packages/stripe-plugin"},"publishConfig":{"access":"public","provenance":true},"keywords":["aqua","qa","stripe","plugin"],"author":{"name":"satetsu888"},"license":"MIT","scripts":{"build":"tsup","lint":"tsc --noEmit","test":"vitest run","prepublishOnly":"npm run build"},"peerDependencies":{"@aquaqa/cli":">=0.4.0"},"dependencies":{"stripe":"^17.0.0"},"devDependencies":{"@aquaqa/cli":"*","@types/node":"^20.0.0","tsup":"^8.5.1","zod":"^3.25.0"},"engines":{"node":">=20.18.1"},"gitHead":"f3710e6b1bdf904723adad65a39fad3565f9a682","types":"./dist/index.d.ts","_id":"@aquaqa/stripe-plugin@0.1.0","bugs":{"url":"https://github.com/satetsu888/aqua-cli/issues"},"homepage":"https://github.com/satetsu888/aqua-cli#readme","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-zRp6HXApeTnFtRUZDzsp9OJg7FKohjTgMHbOZrzVXqbC7CsOKSYTCwxuUoVResJnqcsenv6CyJ66bYHodKJ72g==","shasum":"32ad67a6bd8a5c4991f8eeda3973f9dbb3fefc02","tarball":"https://registry.npmjs.org/@aquaqa/stripe-plugin/-/stripe-plugin-0.1.0.tgz","fileCount":5,"unpackedSize":18192,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aquaqa%2fstripe-plugin@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHMEoE7mjDkC9dcO9zLzDRzsBp4kZY0ZWlgZ7DFS4fEnAiAoCZ6nVFCh7Dc54qdiOX3BHmOhdRDziHpXvU4WNsl7uA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:108c0094-58ac-4a17-beb0-c30a50f32473"}},"directories":{},"maintainers":[{"name":"satetsu888","email":"satetsu888@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/stripe-plugin_0.1.0_1774178345497_0.023522142728690687"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-22T10:46:29.714Z","modified":"2026-03-22T11:19:05.945Z","0.1.0-prerelease":"2026-03-22T10:46:30.019Z","0.1.0":"2026-03-22T11:19:05.656Z"},"bugs":{"url":"https://github.com/satetsu888/aqua-cli/issues"},"author":{"name":"satetsu888"},"license":"MIT","homepage":"https://github.com/satetsu888/aqua-cli#readme","keywords":["aqua","qa","stripe","plugin"],"repository":{"type":"git","url":"git+https://github.com/satetsu888/aqua-cli.git","directory":"packages/stripe-plugin"},"description":"Stripe plugin for aqua QA - verify Stripe resource states in QA plans","maintainers":[{"name":"satetsu888","email":"satetsu888@gmail.com"}],"readme":"# @aquaqa/stripe-plugin\n\nStripe plugin for [aqua](https://aquaqa.com/) — verify Stripe resource states in your QA plans.\n\nThis plugin adds a `stripe` action type to aqua, allowing you to check the state of Stripe resources (customers, subscriptions, payment intents, etc.) as part of your QA test plans.\n\n[日本語 README](./README.ja.md)\n\n## Installation\n\n```bash\nnpm install @aquaqa/stripe-plugin\n```\n\n## Setup\n\n### 1. Add to project config\n\nAdd the plugin to your `.aqua/config.json`:\n\n```jsonc\n{\n  \"server_url\": \"https://app.aquaqa.com\",\n  \"project_key\": \"github.com/owner/repo\",\n  \"plugins\": [\"@aquaqa/stripe-plugin\"]\n}\n```\n\n### 2. Configure Stripe API key\n\nAdd your Stripe API key to an environment file (`.aqua/environments/<name>.json`):\n\n```jsonc\n{\n  \"secrets\": {\n    \"stripe_api_key\": { \"type\": \"env\", \"name\": \"STRIPE_SECRET_KEY\" }\n  }\n}\n```\n\nThe key is automatically masked before being sent to the aqua server.\n\n## Usage\n\nUse the `stripe` action type in your QA plan steps:\n\n```jsonc\n{\n  \"step_key\": \"check_subscription\",\n  \"action\": \"stripe\",\n  \"config\": {\n    \"operation\": \"get_subscription\",\n    \"params\": { \"id\": \"{{subscription_id}}\" }\n  },\n  \"assertions\": [\n    {\n      \"type\": \"stripe_field\",\n      \"path\": \"status\",\n      \"expected\": \"active\",\n      \"description\": \"Subscription should be active\"\n    }\n  ],\n  \"extract\": {\n    \"plan_id\": \"$.items.data[0].price.id\"\n  }\n}\n```\n\n### Polling\n\nFor async operations (e.g., waiting for a webhook to process), use the `poll` config:\n\n```jsonc\n{\n  \"config\": {\n    \"operation\": \"get_subscription\",\n    \"params\": { \"id\": \"{{subscription_id}}\" },\n    \"poll\": {\n      \"interval_ms\": 2000,\n      \"timeout_ms\": 30000,\n      \"until\": { \"path\": \"status\", \"equals\": \"active\" }\n    }\n  }\n}\n```\n\n## Supported Operations\n\n| Operation | Required Params | Description |\n|---|---|---|\n| `get_customer` | `id` | Retrieve a customer |\n| `get_subscription` | `id` | Retrieve a subscription |\n| `list_subscriptions` | `customer` (optional) | List subscriptions |\n| `get_payment_intent` | `id` | Retrieve a PaymentIntent |\n| `list_payment_intents` | `customer` (optional) | List PaymentIntents |\n| `get_invoice` | `id` | Retrieve an invoice |\n| `list_invoices` | `customer`/`subscription` (optional) | List invoices |\n| `get_charge` | `id` | Retrieve a charge |\n| `list_charges` | `customer` (optional) | List charges |\n| `get_checkout_session` | `id` | Retrieve a Checkout Session |\n| `get_product` | `id` | Retrieve a product |\n| `get_price` | `id` | Retrieve a price |\n\n## Assertion Types\n\n### `stripe_field`\n\nCheck a field value in the Stripe response:\n\n```jsonc\n{\n  \"type\": \"stripe_field\",\n  \"path\": \"status\",                  // dot-path (e.g. \"items.data[0].price.id\")\n  \"expected\": \"active\",\n  \"condition\": \"equals\"              // equals | contains | not_equals | exists | not_exists | greater_than | less_than\n}\n```\n\n### `stripe_object_exists`\n\nCheck whether the Stripe object exists:\n\n```jsonc\n{\n  \"type\": \"stripe_object_exists\",\n  \"exists\": true\n}\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}