Git Product home page Git Product logo

gatsby-starter-stripe's Introduction

gatsby-starter-stripe

A starter to create and manage a storefront with Gatsby, Stripe, & Netlify Functions; includes cart, checkout, admin, and live data.

Features

  • Create and manage inventory through admin interface
  • Statically generate based on Stripe inventory
  • Dynamically update with live inventory & availability data
  • Checkout powered by Stripe
  • Serverless functions interact with Stripe API

Getting Started

  1. Create a new site from this starter

    gatsby new <project-name> https://github.com/brxck/gatsby-starter-stripe
  2. Setup Stripe

    To get you started quickly, this starter comes with test data in the form of Stripe fixtures. To install the fixtures, first install and configure the Stripe CLI.

    Next, from the project folder:

    stripe fixtures ./stripe-fixtures.json

    ⚠️ A Cannot query field error usually means that they queried field is empty in all of your products/prices. If a field is empty Gatsby cannot add it to the GraphQl schema. Either define the field in your Stripe data, or remove it from the query in question.

  3. Configure API keys

    Rename .env.example to .env and fill with your Stripe API test keys. Don't commit this file to a public repo!

  4. Start development servers

    You will need to install and configure the Netlify CLI: npm install netlify-cli -g

    To start the development servers for Gatsby & Netlify Functions simply run Netlify Dev.

    netlify dev

    Your site is accessible at http://localhost:8888!

    ⚠️ Make sure to use the proxied Netilfy Dev server at :8888! Otherwise your Gatsby application will not be able to access your Netlify Functions.

  5. Start developing

    This starter aims to handle some of the plumbing needed to integrate Gatsby & Stripe. Everything else is left to you and your preferred methods.

    The source files for Netlify Functions are located at /src/functions, they are then built into the files in /functions. Visit the documentation for more information on their structure.

  6. Deploy to Netlify

    netlify deploy

    You will need to enable Netlify Identity for authentication into the admin area.

    If you want to deploy somewhere other than Netlify, you'll have to find another place to deploy the serverless functions in /functions, ex. AWS Lambda.

Contributing

Issues and pull requests welcome!

Acknowledgments

Thanks @njosefbeck for authoring and maintaining gatsby-source-stripe, which makes this starter possible!

gatsby-starter-stripe's People

Contributors

brxck avatar dependabot[bot] avatar gixxerblade avatar solazio avatar tmhuyett avatar zedd45 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

gatsby-starter-stripe's Issues

Error in function useStaticQuery in ./.cache/gatsby-browser-entry.js

Hi @brxck,

After running netlify dev and reloading the browser I get

One unhandled runtime error found in your files. See the list below to fix it:
Error in function useStaticQuery in ./.cache/gatsby-browser-entry.js:77
The result of this StaticQuery could not be fetched. This is likely a bug in Gatsby and if refreshing the page does not fix it, please open an issue in https://github.com/gatsbyjs/gatsby/issues

./.cache/gatsby-browser-entry.js:77

  75 |     return context[query].data
  76 |   } else {
> 77 |     throw new Error(
     |          ^
  78 |       `The result of this StaticQuery could not be fetched.\n\n` +
  79 |         `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +
  80 |         `please open an issue in https://github.com/gatsbyjs/gatsby/issues

It says it is a Gatsby issue, however as I do not know enough about either this starter or Gatsby generally, I thought I would post here first.

Screengrab of error message:
Screen Shot 2021-05-08 at 2 25 28 pm

Issue on start

When running "gatsby develop" on initial load, an error occurred.

Expected Behavior

When running gatsby develop, a local dev environment should be launched

Current Behavior

This is the error in red in the terminal:
Error: [ { GraphQLError: Cannot query field "allStripeSku" on type "Query". Di d you mean "allSite"?
Complete terminal response below.

Possible Solution

Steps to Reproduce (for bugs)

  1. install theme using "gatsby new example-site-for-square-starter https://github.com/jonniebigodes/example-site-for-square-starter"
  2. "cd gatsby starter-stripe"
  3. "gatsby develop"

Context

Your Environment

  • Version used:
    Node v. 10.15.3

  • Environment name and version (e.g. Chrome 39, node.js 5.4):

  • Operating System and version (desktop or mobile):
    Mac OS High Sierra

  • Link to your project:

UNHANDLED REJECTION [ { GraphQLError: Cannot query field "allStripeSku" on type "Query". Did you mean "allSite"?
at Object.Field (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/validation/rules/FieldsOnCorrectType.js:53:31)
at Object.enter (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/language/visitor.js:324:29)
at Object.enter (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/language/visitor.js:375:25)
at visit (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/language/visitor.js:242:26)
at validate (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/validation/validate.js:73:24)
at graphqlImpl (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/graphql.js:99:49)
at /Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/graphql.js:28:59
at new Promise ()
at graphql (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/graphql/graphql.js:26:10)
at GraphQLRunner.query (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/dist/query/graphql-runner.js:38:12)
at /Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/dist/bootstrap/graphql-runner.js:11:37
at Object.exports.createPages (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/gatsby-node.js:21:10)
at runAPI (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/dist/utils/api-runner-node.js:234:37)
at resolve (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/dist/utils/api-runner-node.js:347:15)
at Promise._execute (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/debuggability.js:313:9)
at Promise._resolveFromExecutor (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/promise.js:488:18)
at new Promise (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/promise.js:79:10)
at Promise.mapSeries.plugin (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/dist/utils/api-runner-node.js:346:12)
at tryCatcher (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/util.js:16:23)
at Object.gotValue (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/reduce.js:155:18)
at Object.gotAccum (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/reduce.js:144:25)
at Object.tryCatcher (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/promise.js:517:31)
at Promise._settlePromise (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/promise.js:574:18)
at Promise._settlePromiseCtx (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/promise.js:611:10)
at _drainQueueStep (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/async.js:142:12)
at _drainQueue (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/async.js:131:9)
at Async._drainQueues (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/async.js:147:5)
at Immediate.Async.drainQueues (/Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/node_modules/gatsby/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:705:18)
at tryOnImmediate (timers.js:676:5)
at processImmediate (timers.js:658:5)
message:
'Cannot query field "allStripeSku" on type "Query". Did you mean "allSite"?',
locations: [ [Object] ] } ]

Error: [ { GraphQLError: Cannot query field "allStripeSku" on type "Query". Di d you mean "allSite"?

  • new Promise

  • graphql-runner.js:38 GraphQLRunner.query
    [gatsby-starter-stripe]/[gatsby]/dist/query/graphql-runner.js:38:12

  • graphql-runner.js:11
    [gatsby-starter-stripe]/[gatsby]/dist/bootstrap/graphql-runner.js:11:37

  • gatsby-node.js:21 Object.exports.createPages
    /Users/llogan/Local Sites/gatsby-stripe/gatsby-starter-stripe/gatsby-node.js :21:10

  • api-runner-node.js:234 runAPI
    [gatsby-starter-stripe]/[gatsby]/dist/utils/api-runner-node.js:234:37

  • api-runner-node.js:347 resolve
    [gatsby-starter-stripe]/[gatsby]/dist/utils/api-runner-node.js:347:15

  • debuggability.js:313 Promise._execute
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/debuggability.js:313: 9

  • promise.js:488 Promise._resolveFromExecutor
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/promise.js:488:18

  • promise.js:79 new Promise
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/promise.js:79:10

  • api-runner-node.js:346 Promise.mapSeries.plugin
    [gatsby-starter-stripe]/[gatsby]/dist/utils/api-runner-node.js:346:12

  • util.js:16 tryCatcher
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/util.js:16:23

  • reduce.js:155 Object.gotValue
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/reduce.js:155:18

  • reduce.js:144 Object.gotAccum
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/reduce.js:144:25

  • util.js:16 Object.tryCatcher
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/util.js:16:23

  • promise.js:517 Promise._settlePromiseFromHandler
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/promise.js:517:31

  • promise.js:574 Promise._settlePromise
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/promise.js:574:18

  • promise.js:611 Promise._settlePromiseCtx
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/promise.js:611:10

  • async.js:142 _drainQueueStep
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/async.js:142:12

  • async.js:131 _drainQueue
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/async.js:131:9

  • async.js:147 Async._drainQueues
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/async.js:147:5

  • async.js:17 Immediate.Async.drainQueues
    [gatsby-starter-stripe]/[gatsby]/[bluebird]/js/release/async.js:17:14

  • message:

  • 'Cannot query field "allStripeSku" on type "Query". Did you mean "allSite"?' ,

  • locations: [ [Object] ] } ]

  • index.js:133 process.on.reason
    [lib]/[gatsby-cli]/lib/index.js:133:14

  • index.js:155 processEmit
    [lib]/[gatsby-cli]/[signal-exit]/index.js:155:32

  • index.js:155 processEmit [as emit]
    [gatsby-starter-stripe]/[signal-exit]/index.js:155:32

  • promises.js:119 emitPromiseRejectionWarnings
    internal/process/promises.js:119:20

  • next_tick.js:69 process._tickCallback
    internal/process/next_tick.js:69:34

Server Errors (500) POSTing to Stripe

I have encountered server errors when using a test account locally, as well as on the the demo site. This occurs after entering a valid test CC number from the stripe docs and submitting the form.

Expected Behavior

Successful transaction should process and (potentially redirect?) send a 200.

Current Behavior

The server responds with a 500, and sends an alert message stating

Unexpected token F in JSON at position 0

The response body appears to be empty, and the following error is emitted in the server logs:

Error during invocation:  TypeError: Cannot read property 'id' of undefined
    at Object.e.exports.handler (/{Project}/functions/orderCreate.js:1:61150)
    at process._tickCallback (internal/process/next_tick.js:68:7)
_http_outgoing.js:470
    throw new ERR_HTTP_HEADERS_SENT('set');
    ^

Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
    at ServerResponse.setHeader (_http_outgoing.js:470:11)
    at callback (/{Project}/node_modules/netlify-lambda/lib/serve.js:37:16)
    at p (/{Project}/functions/orderCreate.js:1:61125)
    at n.orders.create (/{Project}/functions/orderCreate.js:1:60996)
    at Timeout._onTimeout (/{Project}/functions/orderCreate.js:1:9248)

Possible Solution

I have tried upgrading gatsby-stripe-starter to v3.0.x per comments in issue 2, but this did not solve the problem.

I am attempting to put some guards around order.id. It's hard to make sense of the line numbers, since the stack trace is claiming line 1 contains the error.

I will also try to remove the headers where the response object is built and see if this helps. I will report back after I try this.

Steps to Reproduce (for bugs)

  1. Navigate to https://gatsby-starter-stripe.netlify.com/buy/msr-hubba-hubba-nx-2 (or similar URL locally)
  2. Click "add item to cart"
  3. Click "checkout for $xxx"
  4. fill out the payment form with test data
  5. submit the payment
  6. Observe an alert dialog with the aforementioned error message.

Context

This happens for me locally as well as on the demo. I am trying to handle the success condition to process emails and confirmation screen, but I'm unable to get there.

Your Environment

  • Version used:
  • Environment name and version (e.g. Chrome 39, node.js 5.4):
  • Operating System and version (desktop or mobile):
  • Link to your project:

OS: OSX 'Mojave' 10.14.5
Node: v10.15.3
Chrome: 74.0.3729.169 (Official Build) (64-bit) Desktop

UNHANDLED REJECTION Maximum call stack size exceeded

Receiving this error:
ERROR

** UNHANDLED REJECTION Maximum call stack size exceeded
** RangeError: Maximum call stack size exceeded

  • scheduler.development.js:426 Object.unstable_getCurrentPriorityLevel
    [site]/[scheduler]/cjs/scheduler.development.js:426:42

  • react-reconciler.development.js:11654 computeExpirationForFiber
    [site]/[react-reconciler]/cjs/react-reconciler.development.js:11654:33

  • react-reconciler.development.js:3139 Object.enqueueSetState
    [site]/[react-reconciler]/cjs/react-reconciler.development.js:3139:26

  • react.development.js:325 GatsbyReporter.Component.setState
    [site]/[react]/cjs/react.development.js:325:16

  • reporter.js:140 GatsbyReporter._addMessage
    [site]/[gatsby]/[gatsby-cli]/lib/reporter/reporters/ink/reporter.js:140:10

  • index.js:265 Console.console.error.args [as error]
    [site]/[gatsby]/[gatsby-cli]/lib/reporter/index.js:265:39

  • react-reconciler.development.js:100 warningWithoutStack
    [site]/[react-reconciler]/cjs/react-reconciler.development.js:100:32

  • react-reconciler.development.js:10475 warnAboutInvalidUpdates
    [site]/[react-reconciler]/cjs/react-reconciler.development.js:10475:9

  • react-reconciler.development.js:11783 scheduleWorkToRoot
    [site]/[react-reconciler]/cjs/react-reconciler.development.js:11783:7

  • react-reconciler.development.js:11863 scheduleWork
    [site]/[react-reconciler]/cjs/react-reconciler.development.js:11863:14

  • Gatsby CLI version: 2.8.9
  • Gatsby version: 2.15.1
  • Operating System and version (desktop or mobile): Windows 10 WSL 2

Example for a Subscription Item

This is working well with products with sku's, but could you add an example for a subscription item that you can add to a cart and order?

Documentation on bare minimum set up in Stripe for use of this starter

Expected Behavior

I expect to add my stripe keys and follow the instructions to get a basic working demo or starter.

Current Behavior

Able to add my stripe keys and get an okay build but still some issues on setup.

Possible Solution

Create some documentation on the bare minimum needed to set this up. Such as a sku with image, price and etc.

Issue with Stripe Redirect to Checkout

Everything works great when run on a local server but once deployed to Netlify and I click the checkout button I'm getting this error:

stripe.redirectToCheckout: You must provide one of lineItems, items, or sessionId.

It works locally, I can click checkout and it redirects me to Stripe's checkout page with the session id in the URL. Once I pay it redirects me to the success page I set up also with the session id passed in the URL. But once deployed to Netlify it doesn't seem to be able to get the session id. This is the output in the Netlify function log:

{"errorType":"Error","errorMessage":"Not a valid URL","code":"url_invalid","type":"StripeInvalidRequestError","raw":{"code":"url_invalid","doc_url":"https://stripe.com/docs/error-codes/url-invalid","message":"Not a valid URL","param":"success_url","type":"invalid_request_error","headers":{"server":"nginx","date":"Tue, 01 Mar 2022 13:04:22 GMT","content-type":"application/json","content-length":"212","connection":"keep-alive","access-control-allow-credentials":"true","access-control-allow-methods":"GET, POST, HEAD, OPTIONS, DELETE","access-control-allow-origin":"","access-control-expose-headers":"Request-Id, Stripe-Manage-Version, X-Stripe-External-Auth-Required, X-Stripe-Privileged-Session-Required","access-control-max-age":"300","cache-control":"no-cache, no-store","idempotency-key":"4c9bf0e5-dd71-4c2c-bbee-d1591e16810f","original-request":"req_95CZXPLJLfLjCM","request-id":"req_95CZXPLJLfLjCM","stripe-version":"2020-08-27","strict-transport-security":"max-age=31556926; includeSubDomains; preload"},"statusCode":400,"requestId":"req_95CZXPLJLfLjCM"},"rawType":"invalid_request_error","doc_url":"https://stripe.com/docs/error-codes/url-invalid","param":"success_url","headers":{"server":"nginx","date":"Tue, 01 Mar 2022 13:04:22 GMT","content-type":"application/json","content-length":"212","connection":"keep-alive","access-control-allow-credentials":"true","access-control-allow-methods":"GET, POST, HEAD, OPTIONS, DELETE","access-control-allow-origin":"","access-control-expose-headers":"Request-Id, Stripe-Manage-Version, X-Stripe-External-Auth-Required, X-Stripe-Privileged-Session-Required","access-control-max-age":"300","cache-control":"no-cache, no-store","idempotency-key":"4c9bf0e5-dd71-4c2c-bbee-d1591e16810f","original-request":"req_95CZXPLJLfLjCM","request-id":"req_95CZXPLJLfLjCM","stripe-version":"2020-08-27","strict-transport-security":"max-age=31556926; includeSubDomains; preload"},"requestId":"req_95CZXPLJLfLjCM","statusCode":400,"stack":["Error: Not a valid URL"," at Function.generate (/var/task/node_modules/stripe/lib/Error.js:40:16)"," at IncomingMessage. (/var/task/node_modules/stripe/lib/StripeResource.js:180:33)"," at Object.onceWrapper (events.js:519:28)"," at IncomingMessage.emit (events.js:412:35)"," at endReadableNT (internal/streams/readable.js:1334:12)"," at processTicksAndRejections (internal/process/task_queues.js:82:21)"]}

I haven't touched the code in Checkout or orderCreate, so I'm not sure if this is a problem with Stripe or Netlify. Any help here would be greatly appreciated. I've been trying to figure this out on my own for a few days now

Installation problem

Hi there,

I hope someone in the know could help point me in the right direction. What could I possibly be missing? Thank you!

/usr/local/lib/node_modules/gatsby-cli/node_modules/yoga-layout-prebuilt/yoga-layout/build/Release/nbind.js:53
        throw ex;
        ^

Error: listen EADDRINUSE: address already in use :::8000
    at Server.setupListenHandle [as _listen2] (net.js:1280:14)
    at listenInCluster (net.js:1328:12)
    at Server.listen (net.js:1415:7)
    at startDevelopProxy (/Users/adam/PROJECT/MAIONE/node_modules/gatsby/src/utils/develop-proxy.ts:86:10)
    at module.exports (/Users/adam/PROJECT/MAIONE/node_modules/gatsby/src/commands/develop.ts:124:17)
    at process._tickCallback (internal/process/next_tick.js:68:7)
    at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)

Issue Deploying to Netlify

I was able to run and set up a development environment to get started. However, when I run the commands to deploy to Netlify I get a 404-page error.
image

This is the deploy log:
5:37:21 PM: Creating deploy upload records
5:37:22 PM: Starting post processing
5:37:22 PM: Post processing - HTML
5:37:22 PM: Post processing - header rules
5:37:22 PM: Post processing - redirect rules
5:37:22 PM: Post processing done
5:37:22 PM: Site is live ✨

I am wondering if I missed something, or if there is anything I am missing.

Thanks

Cannot query field "allStripeSku" on type "Query". –– GraphQL can't find allStripeSku

Hey, I'm relatively new to this so forgive me if this is something obvious.

Expected Behavior

Expecting the page to load with products that I've created on Stripe, this work when I manually input e.g one button like on this tutorial (https://www.gatsbyjs.org/tutorial/ecommerce-tutorial/#example-1-one-button) but when I try to query it does not.

ive changed evn.emaple to env with test passwords and added products in stripe but still no luck

Current Behavior

graphql does't recognise allStripeSku and throws this error

success open and validate gatsby-configs - 0.016s
success load plugins - 0.773s
success onPreInit - 0.010s
success initialize cache - 0.017s
success copy gatsby files - 0.037s
success onPreBootstrap - 0.006s
success createSchemaCustomization - 0.003s
error (node:9521) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated
(Use `node --trace-deprecation ...` to show where the warning was created)
success source and transform nodes - 3.220s
success building schema - 0.211s
error There was an error in your GraphQL query:

Cannot query field "allStripeSku" on type "Query".

If you don't expect "allStripeSku" to exist on the type "Query" it is most likely a typo.
However, if you expect "allStripeSku" to exist there are a couple of solutions to common problems:

- If you added a new data source and/or changed something inside gatsby-node.js/gatsby-config.js, please try a restart of your development server
- The field might be accessible in another subfield, please try your query in GraphiQL and use the GraphiQL explorer to see which fields you can query and what shape they have
- You want to optionally use your field "allStripeSku" and right now it is not used anywhere. Therefore Gatsby can't infer the type and add it to the GraphQL schema. A quick fix is to add a least one entry with that field ("dummy content")

It is recommended to explicitly type your GraphQL schema if you want to use optional fields. This way you don't have to add the mentioned "dummy content". Visit our docs to learn how you can define the schema for "Query":
https://www.gatsbyjs.org/docs/schema-customization/#creating-type-definitions
error Cannot query field "allStripeSku" on type "Query". Did you mean "allSite" or "allStripeProduct"?


  GraphQLError: Cannot query field "allStripeSku" on type "Query". Did you mean   "allSite" or "allStripeProduct"?
  
  - graphql-runner.js:95 GraphQLRunner.validate
    [brite.london]/[gatsby]/dist/query/graphql-runner.js:95:44
  
  - graphql-runner.js:161 GraphQLRunner.query
    [brite.london]/[gatsby]/dist/query/graphql-runner.js:161:25
  
  - create-graphql-runner.js:33 
    [brite.london]/[gatsby]/dist/bootstrap/create-graphql-runner.js:33:37
  
  - gatsby-node.js:21 Object.exports.createPages
    /Users/nimesh/Desktop/brite.london/gatsby-node.js:21:10
  
  - api-runner-node.js:256 runAPI
    [brite.london]/[gatsby]/dist/utils/api-runner-node.js:256:37
  
  - api-runner-node.js:375 Promise.catch.decorateEvent.pluginName
    [brite.london]/[gatsby]/dist/utils/api-runner-node.js:375:15
  
  - debuggability.js:384 Promise._execute
    [brite.london]/[bluebird]/js/release/debuggability.js:384:9
  
  - promise.js:518 Promise._resolveFromExecutor
    [brite.london]/[bluebird]/js/release/promise.js:518:18
  
  - promise.js:103 new Promise
    [brite.london]/[bluebird]/js/release/promise.js:103:10
  
  - api-runner-node.js:374 
    [brite.london]/[gatsby]/dist/utils/api-runner-node.js:374:12
  
  - util.js:16 tryCatcher
    [brite.london]/[bluebird]/js/release/util.js:16:23
  

not finished createPages - 0.043s
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] start: `gatsby develop`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/nimesh/.npm/_logs/2020-07-24T14_33_17_789Z-debug.log
β—ˆ "npm run start" exited with code 1. Shutting down Netlify Dev server

Any help would be greatly appreciated as I've been going in circles for the last two days trying to figure it out :)

Unknown field 'description' on type 'StripeSkuProduct'.

I Created a new project using this starter and Configured my API Keys with no issues. However, I get the following errors -

success open and validate gatsby-configs β€” 1.846 s
success load plugins β€” 22.471 s
success onPreInit β€” 0.010 s
success initialize cache β€” 0.074 s
success copy gatsby files β€” 1.218 s
success onPreBootstrap β€” 0.095 s
β „ source and transform nodesβœ• We were unable to download images that Stripe was pointing at
Error: We were unable to create a valid Gatsby file node

β   source and transform nodesFailed to process remote content https://files.stripe.com/files/f_test_MvxUIHD9YnwN8hharE8i9Or1
Downloading remote files [==============================] 1/1 0.0 secs 100%
βœ• We were unable to download files that Stripe was hosting
URL: https://files.stripe.com/files/f_test_MvxUIHD9YnwN8hharE8i9Or1
Error: We were unable to create a valid Gatsby file node

βœ• We were unable to download images that Stripe was pointing at
Error: We were unable to create a valid Gatsby file node

⠁ source and transform nodesFailed to process remote content https://files.stripe.com/files/f_test_ZHMenNxOZqp8bT0G8JTxUVIH
Downloading remote files [==============================] 2/2 0.7 secs 100%
βœ• We were unable to download files that Stripe was hosting
URL: https://files.stripe.com/files/f_test_ZHMenNxOZqp8bT0G8JTxUVIH
Error: We were unable to create a valid Gatsby file node

βœ• We were unable to download images that Stripe was pointing at
Error: We were unable to create a valid Gatsby file node

success source and transform nodes β€” 3.458 s
success building schema β€” 0.997 s
success createPages β€” 0.091 s
success createPagesStatefully β€” 0.117 s
success onPreExtractQueries β€” 0.083 s
success update schema β€” 0.080 s
error GraphQL Error Encountered 1 error(s):

  • Unknown field 'description' on type 'StripeSkuProduct'.

    file: C:/Users/user/Documents/webDev/my-gatsby-stripe-site/src/components/ProductsProvider.js
    

success extract queries from components β€” 0.622 s
⠁ (node:5416) DeprecationWarning: Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use codeFrameColumns.
success run graphql queries β€” 0.035 s β€” 5/5 151.73 queries/second
success write out page data β€” 0.124 s
success write out redirect data β€” 0.006 s
success Build manifest and related icons β€” 0.376 s
success onPostBootstrap β€” 0.383 s

info bootstrap finished - 124.113 s

[HPM] Proxy created: / -> http://localhost:9000
[HPM] Proxy rewrite rule created: "/.netlify/functions/" ~> ""
i ο½’wdmο½£: wait until bundle finished: /
DONE Compiled successfully in 16567ms

My STRIPE logs indicate -
Response body
{
"error": {
"message": "You provided an API key, but the requested endpoint does not require authentication. Try sending your request again without the 'Authorization' header.",
"type": "invalid_request_error"
}
}

Thank you.

Orders API is deprecated

Stripe is sweeping this one under the rug. Relying on it isn't the most dangerous thing but it can only cause problems in the future. Already, Orders and Skus are inaccessible through the dashboard by default, as mentioned in #27

We should move to Products and Prices, although we lose the ability to track inventory with Prices 😞

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.