@@ -16,6 +16,7 @@ import { upsertPaymentIntents } from '../lib/payment_intents'
16
16
import { upsertSubscriptionSchedules } from '../lib/subscription_schedules'
17
17
import { deleteTaxId , upsertTaxIds } from '../lib/tax_ids'
18
18
import { upsertCreditNotes } from '../lib/creditNotes'
19
+ import { logger } from '../logger'
19
20
20
21
const config = getConfig ( )
21
22
@@ -41,13 +42,19 @@ export default async function routes(fastify: FastifyInstance) {
41
42
case 'charge.succeeded' :
42
43
case 'charge.updated' : {
43
44
const charge = event . data . object as Stripe . Charge
45
+
46
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for charge ${ charge . id } ` )
47
+
44
48
await upsertCharges ( [ charge ] )
45
49
break
46
50
}
47
51
case 'customer.created' :
48
52
case 'customer.deleted' :
49
53
case 'customer.updated' : {
50
54
const customer = event . data . object as Stripe . Customer
55
+
56
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for customer ${ customer . id } ` )
57
+
51
58
await upsertCustomers ( [ customer ] )
52
59
break
53
60
}
@@ -60,17 +67,28 @@ export default async function routes(fastify: FastifyInstance) {
60
67
case 'customer.subscription.resumed' :
61
68
case 'customer.subscription.updated' : {
62
69
const subscription = event . data . object as Stripe . Subscription
70
+
71
+ logger . info (
72
+ `Received webhook ${ event . id } : ${ event . type } for subscription ${ subscription . id } `
73
+ )
74
+
63
75
await upsertSubscriptions ( [ subscription ] )
64
76
break
65
77
}
66
78
case 'customer.tax_id.updated' :
67
79
case 'customer.tax_id.created' : {
68
80
const taxId = event . data . object as Stripe . TaxId
81
+
82
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for taxId ${ taxId . id } ` )
83
+
69
84
await upsertTaxIds ( [ taxId ] )
70
85
break
71
86
}
72
87
case 'customer.tax_id.deleted' : {
73
88
const taxId = event . data . object as Stripe . TaxId
89
+
90
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for taxId ${ taxId . id } ` )
91
+
74
92
await deleteTaxId ( taxId . id )
75
93
break
76
94
}
@@ -90,39 +108,60 @@ export default async function routes(fastify: FastifyInstance) {
90
108
case 'invoice.marked_uncollectible' :
91
109
case 'invoice.updated' : {
92
110
const invoice = event . data . object as Stripe . Invoice
111
+
112
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for invoice ${ invoice . id } ` )
113
+
93
114
await upsertInvoices ( [ invoice ] )
94
115
break
95
116
}
96
117
case 'product.created' :
97
118
case 'product.updated' : {
98
119
const product = event . data . object as Stripe . Product
120
+
121
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for product ${ product . id } ` )
122
+
99
123
await upsertProducts ( [ product ] )
100
124
break
101
125
}
102
126
case 'product.deleted' : {
103
127
const product = event . data . object as Stripe . Product
128
+
129
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for product ${ product . id } ` )
130
+
104
131
await deleteProduct ( product . id )
105
132
break
106
133
}
107
134
case 'price.created' :
108
135
case 'price.updated' : {
109
136
const price = event . data . object as Stripe . Price
137
+
138
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for price ${ price . id } ` )
139
+
110
140
await upsertPrices ( [ price ] )
111
141
break
112
142
}
113
143
case 'price.deleted' : {
114
144
const price = event . data . object as Stripe . Price
145
+
146
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for price ${ price . id } ` )
147
+
115
148
await deletePrice ( price . id )
116
149
break
117
150
}
118
151
case 'plan.created' :
119
152
case 'plan.updated' : {
120
153
const plan = event . data . object as Stripe . Plan
154
+
155
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for plan ${ plan . id } ` )
156
+
121
157
await upsertPlans ( [ plan ] )
122
158
break
123
159
}
124
160
case 'plan.deleted' : {
125
161
const plan = event . data . object as Stripe . Plan
162
+
163
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for plan ${ plan . id } ` )
164
+
126
165
await deletePlan ( plan . id )
127
166
break
128
167
}
@@ -133,6 +172,10 @@ export default async function routes(fastify: FastifyInstance) {
133
172
case 'setup_intent.succeeded' : {
134
173
const setupIntent = event . data . object as Stripe . SetupIntent
135
174
175
+ logger . info (
176
+ `Received webhook ${ event . id } : ${ event . type } for setupIntent ${ setupIntent . id } `
177
+ )
178
+
136
179
await upsertSetupIntents ( [ setupIntent ] )
137
180
break
138
181
}
@@ -145,6 +188,10 @@ export default async function routes(fastify: FastifyInstance) {
145
188
case 'subscription_schedule.updated' : {
146
189
const subscriptionSchedule = event . data . object as Stripe . SubscriptionSchedule
147
190
191
+ logger . info (
192
+ `Received webhook ${ event . id } : ${ event . type } for subscriptionSchedule ${ subscriptionSchedule . id } `
193
+ )
194
+
148
195
await upsertSubscriptionSchedules ( [ subscriptionSchedule ] )
149
196
break
150
197
}
@@ -154,6 +201,10 @@ export default async function routes(fastify: FastifyInstance) {
154
201
case 'payment_method.updated' : {
155
202
const paymentMethod = event . data . object as Stripe . PaymentMethod
156
203
204
+ logger . info (
205
+ `Received webhook ${ event . id } : ${ event . type } for paymentMethod ${ paymentMethod . id } `
206
+ )
207
+
157
208
await upsertPaymentMethods ( [ paymentMethod ] )
158
209
break
159
210
}
@@ -164,6 +215,8 @@ export default async function routes(fastify: FastifyInstance) {
164
215
case 'charge.dispute.closed' : {
165
216
const dispute = event . data . object as Stripe . Dispute
166
217
218
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for dispute ${ dispute . id } ` )
219
+
167
220
await upsertDisputes ( [ dispute ] )
168
221
break
169
222
}
@@ -177,6 +230,10 @@ export default async function routes(fastify: FastifyInstance) {
177
230
case 'payment_intent.succeeded' : {
178
231
const paymentIntent = event . data . object as Stripe . PaymentIntent
179
232
233
+ logger . info (
234
+ `Received webhook ${ event . id } : ${ event . type } for paymentIntent ${ paymentIntent . id } `
235
+ )
236
+
180
237
await upsertPaymentIntents ( [ paymentIntent ] )
181
238
break
182
239
}
@@ -186,6 +243,8 @@ export default async function routes(fastify: FastifyInstance) {
186
243
case 'credit_note.voided' : {
187
244
const creditNote = event . data . object as Stripe . CreditNote
188
245
246
+ logger . info ( `Received webhook ${ event . id } : ${ event . type } for creditNote ${ creditNote . id } ` )
247
+
189
248
await upsertCreditNotes ( [ creditNote ] )
190
249
break
191
250
}
0 commit comments