Fabien O'Carroll
f7630ec05b
Updated createCheckoutSession to work w/o member
...
no-issue
This will allow us to do a payment first flow, in which a payment is
taken, before creating a member
2019-09-25 16:53:08 +07:00
Fabien O'Carroll
0527304376
Updated stripe to setAppInfo and apiVersion
...
no-issue
2019-09-25 11:35:58 +07:00
Fabien O'Carroll
6722d3bc8a
Ensured member is not linked to customer twice
...
no-issue
Edge case but easy to solve - so we dun it
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
db42b35e9f
Added handler for checkout.session.completed
...
no-issue
This will link the customer from the checkout session to the member with
the same email
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
ed4dfd8d54
Updated users module to use getActiveSubscriptions
...
no-issue
This offloads some stripe specific logic into the stripe module
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
314fd6a540
Added method for getting active subscriptions
...
no-issue
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
a92d5f064b
Added method for getting stripe customer for member
...
no-issue
This finds the first active customer that is linked to the member, and
created and links a new customer if a viable one does not exist.
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
69abbc6fa2
Added method for linking customer to member
...
no-issue
Uses the metadata storage passed into stripe
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
9beb496bd1
Passed in metadata getter/setter to stripe
...
no-issue
This will be used to store information such as customer id
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
644fd71d4f
Removed unused getPublicConfig method from stripe
...
no-issue
Don't use it you lose it!
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
373f67a117
Added getCustomer method to stripe
...
no-issue
This uses the stripeRequests module directly since the customers api was
removed.
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
2849c647d6
Added parseWebhook method to stripe
...
no-issue
This uses the webhook secret and stripe module to validate the signature
and parse the body into an object
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
343fcecfff
Updated stripe to create webhook on boot configure
...
no-issue
This will allow us to a) have an endpoint to receive webhooks and b) get
hold of the webhook secret to validate the signature.
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
4dc42709c3
Removed superfluous stripe api modules
...
no-issue
This removes the subscription api as we are using stripe checkout to
generate those
This removes the customers api as we no longer need the deterministic
api for it
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
216ab072b4
Refactored users module to wrap all methods
...
no-issue
This also adds initial support for `update` user - which is not used
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
f7b61e901d
Removed body-parser from router middleware
...
no-issue
Validating stripe webhooks requires the body as a buffer, so we can no
longer parse json body by default
2019-09-25 11:20:02 +07:00
Fabien O'Carroll
58cb25fe86
Published new versions
...
- @tryghost/magic-link@0.1.2
- @tryghost/members-api@0.5.3
- @tryghost/members-browser-auth@0.2.3
- @tryghost/members-gateway-api@0.1.7
- @tryghost/members-ssr@0.5.0
- @tryghost/members-theme-bindings@0.2.6
2019-09-16 14:01:13 +08:00
Fabien O'Carroll
8b54a91b60
Published new versions
...
- @tryghost/members-api@0.5.2
2019-09-15 11:50:11 +08:00
Fabien O'Carroll
de0baded13
Logged error when sending email ( #62 )
...
no-issue
2019-09-15 11:48:11 +08:00
Fabien O'Carroll
b834c70559
Published new versions
...
- @tryghost/magic-link@0.1.1
- @tryghost/members-api@0.5.1
- @tryghost/members-auth-pages@1.1.3
- @tryghost/members-browser-auth@0.2.2
- @tryghost/members-gateway-api@0.1.6
- @tryghost/members-gateway-protocol@0.1.4
- @tryghost/members-ssr@0.4.0
- @tryghost/members-theme-bindings@0.2.5
2019-09-09 15:53:10 +08:00
Fabien O'Carroll
d741cd9fba
Returned fully hydrated member object when creating member
...
no-issue
2019-09-09 15:51:20 +08:00
Renovate Bot
84f9e69a50
Update dependency sinon to v7.4.2
2019-09-09 13:57:00 +08:00
Fabien O'Carroll
cb3cedd9df
Published new versions
...
- @tryghost/members-api@0.5.0
- @tryghost/members-ssr@0.3.1
2019-09-06 14:56:19 +08:00
Fabien O'Carroll
4ead495b45
Ensured that destroying member removes stripe customer
...
no-issue
This also mean sthe subscription will be cancelled
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
ec3948287f
Added subscription data when fetching member
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
4f1bc288c5
Added support for stripe checkout payments
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
61561a5af6
Added stripe payments module
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
7376a333c2
Removed lib/subscriptions
...
no-issue
This is no longer used
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
1c5ba6056a
Removed lib/cookies
...
no-issue
This is no longer used
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
8bfcc37ad4
Removed lib/util
...
no-issue
This is no longer used
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
64738adfc0
Removed gateway
...
no-issue
This is no longer needed
2019-09-06 14:30:27 +08:00
Fabien O'Carroll
95ed945f6d
Published new versions
...
- @tryghost/members-api@0.4.1
- @tryghost/members-auth-pages@1.1.2
2019-09-05 11:01:48 +08:00
Fabien O'Carroll
ffd20f74f0
Exported members from members-api
...
no-issue
This allows consumers of the service to fetch members with payment info
2019-09-05 11:00:46 +08:00
Fabien O'Carroll
33ff98f789
Published new versions
...
- @tryghost/magic-link@0.1.0
- @tryghost/members-api@0.4.0
- @tryghost/members-auth-pages@1.1.1
- @tryghost/members-browser-auth@0.2.1
- @tryghost/members-gateway-api@0.1.5
- @tryghost/members-gateway-protocol@0.1.3
- @tryghost/members-ssr@0.3.0
- @tryghost/members-theme-bindings@0.2.4
2019-09-03 18:25:17 +08:00
Fabien O'Carroll
d9fd07ef7f
Fixed getMemberIdentityData method
...
no-issue
The users.get method expects an object with email prop
2019-09-03 18:21:04 +08:00
Fabien O'Carroll
af6c897a14
Updated members-api to use magic-link
...
no-issue
This removes a *lot* of funtionality, stripping the members-api module
to *only* handle the magic link signin flow.
2019-09-03 15:35:04 +08:00
Renovate Bot
6276c82888
Update dependency sinon to v7.4.1
2019-08-12 05:28:29 +00:00
Renovate Bot
017c24992f
Roll back dependency sinon to 7.3.2
2019-08-12 00:30:26 +00:00
Renovate Bot
b8ae86a8ea
Update dependency sinon to v7.4.0
2019-08-05 01:28:22 +00:00
Renovate Bot
97d34b2aa1
Update dependency mocha to v6.2.0
2019-07-22 01:28:44 +00:00
Fabien O'Carroll
283c5fea58
Published new versions
...
- @tryghost/members-api@0.3.0
2019-07-17 18:23:25 +08:00
Fabien O'Carroll
1fb969ad36
Refactored to improve logging and error handling
...
* Installed stripe@7.4.0
refs #38
We were relying on stripe being installed in Ghost, this moves the dep
to the correct package.
* Created exponentialBackoff wrapper for stripe api
refs #38
https://stripe.com/docs/testing#rate-limits The stripe docs suggest to
use exponential backoff when recieving a rate limit error. This wrapper
will wrap stripe api calls, and retry them after 1s,2s,4s,8s,16s until
eventually failing. This gives a total of 5 retries over 31s.
* Added wrappers around the stripe api calls
refs #38
* Ensured all calls to stripe api go via exp backoff
refs #38
* Scaffolding out the error handling for stripe api
* Forwarding all errors
* Refactored stripe api into modules
* Ensured the ready promise object is not replaced
* Added logging setup
- Sets up common logger structure with custom logger passed through
* Ensure logger is kept in module state
* Renamed updateLogger to setLogger
* Removed `logger` param and exposed setLogger method
* Ensured different ids used for test mode
* Ensure setLogger works for prototype methods
* Removed reconfigureSettings method
* Updated payment processer service to keep static ready promise
* Added eventemitter to member api instance to handle errors
* Moved logging of errors to http level
2019-07-17 18:20:13 +08:00
Fabien O'Carroll
20c60e4de3
Published new versions
...
- @tryghost/members-api@0.2.0
- @tryghost/members-browser-auth@0.1.3
- @tryghost/members-gateway-api@0.1.4
- @tryghost/members-theme-bindings@0.2.2
2019-07-09 15:39:16 +08:00
Fabien O'Carroll
34f7b2c7d6
Updated members-api to export a router instance
...
no-issue
This was the original design, to make it easy to incorporate into
another application, but the URL structure in Ghost did not allow for
it, we've since learnt that the URL structure _should_ be how it is
here, so we can export a router with both the auth endpoints and the
static files for the gateway
2019-07-09 15:23:11 +08:00
Fabien O'Carroll
f220ee10c7
Published new versions
...
- @tryghost/members-api@0.1.2
- @tryghost/members-auth-pages@0.2.2
- @tryghost/members-browser-auth@0.1.2
- @tryghost/members-gateway-api@0.1.3
- @tryghost/members-gateway-protocol@0.1.2
- @tryghost/members-theme-bindings@0.2.0
2019-06-25 14:22:42 +07:00
Renovate Bot
ca998d0529
Update dependency jsdom to v15.1.1
2019-06-03 01:27:16 +00:00
Renovate Bot
32a13bf561
Update dependency jsdom to v15.1.0
2019-05-13 02:30:08 +00:00
Fabien O'Carroll
4633ea06e4
Published new versions
...
- @tryghost/members-api@0.1.1
- @tryghost/members-auth-pages@0.1.2
2019-05-07 17:40:25 +02:00
Fabien O'Carroll
ac847dbecd
Added default test dir and eslintrc
...
no-issue
2019-05-07 17:35:17 +02:00
Fabien O'Carroll
986791d091
Added package.json and deps for members-api
...
no-issue
2019-05-07 17:35:17 +02:00