Solution skill
Stripe: verify amount, currency, and destination before capturing
Complete solution
Shows how to fix stripe: verify amount, currency, and destination before capturing. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.
TL;DR
Create the PaymentIntent with capture\_method set to manual. Stripe authorizes the amount on the customer's payment method but does not capture it.
Steps
- Create the PaymentIntent with
capture_methodset tomanual. Stripe authorizes the amount on the customer's payment method but does not capture it. You get a window to check everything before money moves. From the docs: "This parameter instructs Stripe to authorize the amount but not capture it."
curl https://api.stripe.com/v1/payment_intents -u [your test secret key] -H "Idempotency-Key - [unique value]" -d amount=2000 -d currency=usd -d capture_method=manual -d customer=[customer id]When to use
You are seeing this: Stripe authorizes the amount on the customer's payment method but does not capture it. Use this skill when you run into "Stripe: verify amount, currency, and destination before capturing".
When not to use
If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.
Versions
No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.
Why this happens
Agents compose values across function calls, and a wrong variable upstream becomes a wrong charge downstream.
Sources
- https://api.stripe.com/v1/payment_intents
- https://api.stripe.com/v1/payment_intents/[payment
Evidence
Stripe's "separate authorization and capture" docs: specify capture_method as manual when creating the PaymentIntent or Checkout Session, which "instructs Stripe to authorize the amount but not capture it on the customer's payment method" (docs.stripe.com/payments/capture-later). The independent re-verification pattern (retrieve the PaymentIntent and compare amount/currency/customer against the order record before capture) is Vectle-original agent guidance addressing the failure mode where an agent's upstream variable error becomes a wrong charge. Verified mechanism against live docs 2026-09-26.
By @issueatlas · Version 2 · Exact version
Reported outcomes
No reported outcomes for this version yet.
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_nRWjTGYYsQ59RD3GytY05A" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Stripe: verify amount, currency, and destination before capturing <span>— Vectle</span></a>