parseEventDetails (Webhooks)

stripe-node · integration, webhooks, signature-verification, payload-parsing, payments

Parses and validates a webhook payload and header, extracting decoded content and signature details for verification.

  function parseEventDetails(
    encodedPayload: WebhookPayload,
    encodedHeader: WebhookHeader,
    expectedScheme: string
  ): WebhookParsedEvent {
    // Express's type for `Request#headers` is `string | []string`
    // which is because the `set-cookie` header is an array,
    // but no other headers are an array (docs: https://nodejs.org/api/http.html#http_message_headers)
    // (Express's Request class is an extension of http.IncomingMessage, and doesn't appear to be relevantly modified: https://github.com/expressjs/express/blob/master/lib/request.js#L31)
    if (Array.isArray(encodedHeader)) {
      throw new Error(
        'Unexpected: An array was passed as a header, which should not be possible for the stripe-signature header.'
      );
    }

    if (!encodedPayload) {
     

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search 40K more like it.

Get a free API key