Skip to content

feat(tools): Add Stripe integration for billing and payments#3483

Open
vakrahul wants to merge 2 commits intoadenhq:mainfrom
vakrahul:feat/tools/stripe-clean
Open

feat(tools): Add Stripe integration for billing and payments#3483
vakrahul wants to merge 2 commits intoadenhq:mainfrom
vakrahul:feat/tools/stripe-clean

Conversation

@vakrahul
Copy link
Contributor

@vakrahul vakrahul commented Feb 4, 2026

Summary

This PR implements the requested stripe_tool to allow agents to interact with billing data. It has been significantly expanded to cover the full customer and subscription lifecycle based on review feedback.

Changes

  • Expanded Stripe Tool: Now supports full lifecycle management (15+ functions).
    • Customer: create, update, get_by_email, get_by_id, list
    • Subscription: create, update, cancel, list, get_status
    • Invoice: list, retrieve, pay
    • Checkout & Payments: create_checkout_session, create_payment_link, list_payment_intents
    • Webhooks: verify_webhook_signature
  • Configuration: Added STRIPE_API_KEY to credential management and registered new tools.
  • Testing: Added comprehensive mock tests covering all new workflows.

Testing

  • Ran pytest tools/tests/tools/test_stripe_tool.py
  • Result: 7 passed (Verified locally with unittest.mock to ensure logic correctness without API calls).

Related Issue

#2860
image

@vakrahul
Copy link
Contributor Author

vakrahul commented Feb 4, 2026

hi @RichardTang-Aden

  • Expanded stripe_tool: Significantly updated the module to support the full billing lifecycle (15+ functions):
    • Customers: create, update, list, and get (Full CRUD).
    • Subscriptions: create, update, cancel, and list (SaaS lifecycle).
    • Invoices: list, retrieve, and pay functionality.
    • Checkout & Webhooks: Added create_checkout_session and verify_webhook_signature.
  • Credential Management: Updated STRIPE_API_KEY in credentials/stripe.py to support the new write-access tools.
  • Dependencies: Added stripe to pyproject.toml.
  • Testing: Expanded unit tests using unittest.mock to verify the new create/update/cancel logic.

Testing

I verified these changes using both manual checks and automated unit tests:

  • Unit tests pass (pytest tools/tests/tools/test_stripe_tool.py) - Result: 7 passed
  • Lint passes (make check)
  • Manual testing performed: Verified create_payment_link generated a valid URL using a test key.

Checklist

  • My code follows the project's style guidelines
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (tools/src/aden_tools/tools/stripe_tool/README.md)
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

@vakrahul
Copy link
Contributor Author

vakrahul commented Feb 5, 2026

@RichardTang-Aden please review it

@vakrahul vakrahul force-pushed the feat/tools/stripe-clean branch from e924d75 to ee42cee Compare February 5, 2026 17:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant