#V8.-signature

1 messages · Page 1 of 1 (latest)

slender wave
#

Hi, are you referring to webhook?

nocturne raft
#

Yes!

slender wave
#

There could be various reason. Which programming language? And which Doc are you following?

nocturne raft
#

node

slender wave
#

Which Doc are you following>?

nocturne raft
#

this one at the moment

slender wave
#

How does your code look like? Do you use req.body specifically?

nocturne raft
#
app.use(bodyParser.urlencoded({ extended: true }));

const endpointSecret = 'DW ABOUT THIS ';

app.post('/webhook', function(request, response) {
  const sig = request.headers['Stripe-Signature'];
  const body = request.body;

  let event = null;

  try {
    console.log('made it to event')
    event = stripe.webhooks.constructEvent(request.body, sig, endpointSecret);
  } catch (err) {
    console.log('invalid signature')
    response.status(400).end();
    return;
  }

  console.log('made it past event')

  let intent = null;
  switch (event['type']) {
    case 'payment_intent.succeeded':
        console.log('made it')
      intent = event.data.object;

    channel.send({content: 'test'})


      break;
    case 'payment_intent.payment_failed':
      intent = event.data.object;
      const message = intent.last_payment_error && intent.last_payment_error.message;
      console.log('Failed:', intent.id, message);
      break;
  }

  response.sendStatus(200);
});

const port = process.env.PORT || 4242;

app.listen(port, () => {
    console.log(`Express Server is now running on port ${port} `);
});```
#

@slender wave

slender wave
#

I see

app.use(express.json())
#

it will set the JSON parser on all request bodies by default, and that alter the raw body from Stripe

nocturne raft
slender wave
#

np, just try removing these lines

app.use(express.json())
app.use(bodyParser.urlencoded({ extended: true }));
nocturne raft
#

done

slender wave
#

Have you resolved the error?

mossy heathBOT
#

This thread has been archived. If you need help with anything else please ask in #dev-help or contact Stripe Support: https://support.stripe.com/contact