Error al conectarse a Stripe desde Firebase Cloud Function

Estoy tratando de procesar un pago con tarjeta de crédito desde mi aplicación de Android usando Firebase y Stripe. He recuperado un token Stripe en mi cliente y estoy usando un activador de base de datos en mi Firebase Cloud Function para detectar cuando se publica un nuevo pedido. Aquí está mi código de función.

const stripe = require('stripe')('sk_test_XXXXXXXXXXXXXXXXXXXXXXXX');

return admin.database()
    .ref()
    .child('orders')
    .child(userId)
    .child(orderId)
    .child('token')
    .once('value')
    .then(snapshot => {
        return snapshot.val();
    })
    .then(token => {

        const amount = order.amount;
        console.log('Amount:', amount);
        console.log('token:', token.id);

        const idempotency_key = orderId;
        const source = token.id;
        const currency = 'usd';
        const charge = {amount, currency, source};

        return stripe.charges.create(charge, { idempotency_key });
    })
    .then(charge => {
        console.log('Success:', charge);
        // If the result is successful, write it back to the database
        return event.data.adminRef.set(charge);
    }, error => {
        console.log('Error:', error);

        return;
    }
);

enter code here

Esto genera el siguiente error:

Error: se produjo un error con nuestra conexión a Stripe en Error._Error (/user_code/node_modules/stripe/lib/Error.js:12:17) en Error.Constructor (/user_code/node_modules/stripe/lib/utils.js: 120: 13) en Error.Constructor (/user_code/node_modules/stripe/lib/utils.js:120:13) en ClientRequest. (/user_code/node_modules/stripe/lib/StripeResource.js:206:9) en emitOne (events.js: 96: 13) en ClientRequest.emit (events.js: 188: 7) en TLSSocket.socketErrorListener (_http_client.js : 309: 9) en emitOne (events.js: 96: 13) en TLSSocket.emit (events.js: 188: 7) en connectErrorNT (net.js: 1021: 8) en _combinedTickCallback (internal / process / next_tick.js : 80: 11) en process._tickDomainCallback (interno / process / next_tick.js: 128: 9)

No puedo encontrar ninguna documentación sobre este error. Y he probado todo lo que se me ocurre. Todas las variables contienen datos válidos.

Respuestas a la pregunta(1)

Su respuesta a la pregunta