𝗦𝘁𝗿𝗶𝗽𝗲 𝗪𝗲𝗯𝗵𝗼𝗼𝗸 𝗧𝗲𝘀𝘁𝗶𝗻𝗴: 𝗟𝗼𝗰𝗮𝗹 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗺𝗲𝗻𝘁 𝗚𝘂𝗶𝗱𝗲

Stripe webhooks మీ యాప్‌కు పేమెంట్లు మరియు సబ్‌స్క్రిప్షన్ల గురించి తెలియజేస్తాయి. ఒక వెబ్‌హుక్ మిస్ అయితే ఆర్డర్లు ఫెయిల్ అవుతాయి. గతంలో టెస్టింగ్ చేయడం కష్టంగా ఉండేది. ఇప్పుడు Stripe CLIతో ఇది సులభం.

మొదట CLIని ఇన్‌స్టాల్ చేయండి.

  • macOS: brew install stripe/stripe-cli/stripe
  • Windows: scoop install stripe
  • Linux: releases పేజీని ఉపయోగించండి.

ఈ కమాండ్‌తో మీ అకౌంట్‌ను లింక్ చేయండి: stripe login

మీ సర్వర్‌కు ఈవెంట్‌లను ఫార్వార్డ్ చేయడానికి లిజనర్‌ను ప్రారంభించండి: stripe listen --forward-to localhost:3000/webhooks/stripe

అవుట్‌పుట్ నుండి సైనింగ్ సీక్రెట్‌ను సేవ్ చేయండి. దానిని మీ ఎన్విరాన్‌మెంట్‌లో సెట్ చేయండి: export STRIPE_WEBHOOK_SECRET=whsec_abc123

డబ్బు ఖర్చు చేయకుండా ఈవెంట్‌లను టెస్ట్ చేయండి. ట్రిగ్గర్‌లను ఉపయోగించండి.

  • పేమెంట్ సక్సెస్: stripe trigger payment_intent.succeeded
  • పేమెంట్ ఫెయిల్: stripe trigger payment_intent.payment_failed
  • కొత్త సబ్‌స్క్రిప్షన్: stripe trigger customer.subscription.created

నకిలీ రిక్వెస్ట్‌లను నిరోధించడానికి సిగ్నేచర్‌లను వెరిఫై చేయండి. రా (raw) రిక్వెస్ట్ బాడీని ఉపయోగించండి. JSON పార్సర్‌లు వెరిఫికేషన్‌ను దెబ్బతీస్తాయి. Expressలో express.raw()ని ఉపయోగించండి.

సాధారణ లోపాలను పరిష్కరించండి.

  • 400 రెస్పాన్స్ అంటే సిగ్నేచర్ ఫెయిల్ అయిందని అర్థం.
  • మీ CLI సీక్రెట్‌ను తనిఖీ చేయండి. ఇక్కడ డ్యాష్‌బోర్డ్ సీక్రెట్‌లు పనిచేయవు.
  • మీ లాగ్‌లను సమీక్షించండి.

ప్రొడక్షన్ చెక్‌లిస్ట్.

  • HTTPSని ఉపయోగించండి.
  • ప్రొడక్షన్ సీక్రెట్‌ను ఉపయోగించండి.
  • 30 సెకన్ల లోపు రెస్పాండ్ అవ్వండి.
  • డూప్లికేట్ ఈవెంట్‌లను హ్యాండిల్ చేయండి.

మూలం: https://dev.to/digital_trubador/stripe-webhook-testing-local-development-guide-391