backend-manager 5.9.5 → 5.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/package.json +8 -1
  2. package/src/manager/events/cron/runner.js +0 -1
  3. package/src/manager/libraries/email/data/disposable-domains.json +21 -0
  4. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-11T03-28-07/metadata.json +14 -0
  5. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-11T03-28-07/newsletter.html +486 -0
  6. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-11T03-28-07/newsletter.md +41 -0
  7. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-11T03-28-07/newsletter.mjml +97 -0
  8. package/{test/email/fixtures/clean.json → src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-11T03-28-07/structure.json} +16 -4
  9. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-11T03-28-07/summary.md +1 -0
  10. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-00-28/metadata.json +14 -0
  11. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-00-28/newsletter.html +486 -0
  12. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-00-28/newsletter.md +41 -0
  13. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-00-28/newsletter.mjml +97 -0
  14. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-00-28/structure.json +42 -0
  15. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-00-28/summary.md +1 -0
  16. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-01-34/metadata.json +14 -0
  17. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-01-34/newsletter.html +486 -0
  18. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-01-34/newsletter.md +41 -0
  19. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-01-34/newsletter.mjml +97 -0
  20. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-01-34/structure.json +42 -0
  21. package/src/test/fixtures/firebase-project/.temp/newsletter/run-2026-06-18T01-01-34/summary.md +1 -0
  22. package/src/test/fixtures/firebase-project/.temp/test-mode.json +6 -0
  23. package/src/test/fixtures/firebase-project/database-debug.log +12 -0
  24. package/src/test/fixtures/firebase-project/firestore-debug.log +132 -0
  25. package/src/test/fixtures/firebase-project/pubsub-debug.log +17 -0
  26. package/.codeclimate.yml +0 -32
  27. package/.nvmrc +0 -1
  28. package/CHANGELOG.md +0 -1440
  29. package/PROGRESS.md +0 -93
  30. package/TODO-2.md +0 -121
  31. package/TODO-CHARGEBLAST.md +0 -32
  32. package/TODO-WEBHOOK-KEY-LEGACY-REMOVAL.md +0 -15
  33. package/TODO-WEBHOOK-KEY-UPGRADE.md +0 -138
  34. package/TODO-email-auth.md +0 -14
  35. package/TODO.md +0 -187
  36. package/plans/mcp2.md +0 -247
  37. package/plans/suspended-subscription-dead-zone.md +0 -97
  38. package/scripts/test-helper-providers.js +0 -162
  39. package/scripts/update-disposable-domains.js +0 -44
  40. package/templates/_.env +0 -42
  41. package/templates/_.gitignore +0 -60
  42. package/templates/backend-manager-config.json +0 -249
  43. package/templates/database.rules.json +0 -83
  44. package/templates/firebase.json +0 -66
  45. package/templates/firestore.indexes.json +0 -4
  46. package/templates/firestore.rules +0 -112
  47. package/templates/public/404.html +0 -26
  48. package/templates/public/index.html +0 -24
  49. package/templates/remoteconfig.template.json +0 -1
  50. package/templates/storage-lifecycle-config-1-day.json +0 -9
  51. package/templates/storage-lifecycle-config-30-days.json +0 -9
  52. package/templates/storage.rules +0 -8
  53. package/test/_init/accounts-validation.js +0 -58
  54. package/test/_legacy/ai/index.js +0 -231
  55. package/test/_legacy/ai/test.jpg +0 -0
  56. package/test/_legacy/ai/test.pdf +0 -0
  57. package/test/_legacy/index.js +0 -31
  58. package/test/_legacy/payment-resolver/chargebee/orders/refunded.json +0 -0
  59. package/test/_legacy/payment-resolver/chargebee/orders/unpaid.json +0 -98
  60. package/test/_legacy/payment-resolver/chargebee/subscriptions/active.json +0 -578
  61. package/test/_legacy/payment-resolver/chargebee/subscriptions/trial-in-trial.json +0 -38
  62. package/test/_legacy/payment-resolver/chargebee/subscriptions/trial-skipped-to-active.json +0 -135
  63. package/test/_legacy/payment-resolver/chargebee/subscriptions/trial-to-active-to-cancelled.json +0 -42
  64. package/test/_legacy/payment-resolver/chargebee/subscriptions/trial-to-active.json +0 -44
  65. package/test/_legacy/payment-resolver/chargebee/subscriptions/trial-to-cancelled.json +0 -39
  66. package/test/_legacy/payment-resolver/chargebee/subscriptions/trial-to-refund.json +0 -143
  67. package/test/_legacy/payment-resolver/chargebee/subscriptions/trial-to-suspended.json +0 -48
  68. package/test/_legacy/payment-resolver/coinbase/orders/regular.json +0 -204
  69. package/test/_legacy/payment-resolver/coinbase/subscriptions/cancelled.json +0 -204
  70. package/test/_legacy/payment-resolver/coinbase/subscriptions/paid-2.json +0 -125
  71. package/test/_legacy/payment-resolver/index.js +0 -1558
  72. package/test/_legacy/payment-resolver/paypal/orders/refunded.json +0 -0
  73. package/test/_legacy/payment-resolver/paypal/orders/regular.json +0 -120
  74. package/test/_legacy/payment-resolver/paypal/subscriptions/active-refund-previous-stmnt.json +0 -323
  75. package/test/_legacy/payment-resolver/paypal/subscriptions/active.json +0 -192
  76. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-in-trial.json +0 -125
  77. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-payment-not-complete.json +0 -76
  78. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-payment-overdue-2.json +0 -114
  79. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-payment-overdue.json +0 -114
  80. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-to-active-to-cancelled.json +0 -111
  81. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-to-active.json +0 -132
  82. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-to-cancelled.json +0 -107
  83. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-to-expired.json +0 -91
  84. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-to-refund.json +0 -147
  85. package/test/_legacy/payment-resolver/paypal/subscriptions/trial-to-suspended.json +0 -120
  86. package/test/_legacy/payment-resolver/stripe/orders/refunded.json +0 -0
  87. package/test/_legacy/payment-resolver/stripe/orders/regular.json +0 -91
  88. package/test/_legacy/payment-resolver/stripe/subscriptions/active.json +0 -421
  89. package/test/_legacy/payment-resolver/stripe/subscriptions/trial-in-trial.json +0 -349
  90. package/test/_legacy/payment-resolver/stripe/subscriptions/trial-to-active-failed-authorization.json +0 -430
  91. package/test/_legacy/payment-resolver/stripe/subscriptions/trial-to-active.json +0 -319
  92. package/test/_legacy/payment-resolver/stripe/subscriptions/trial-to-cancelled.json +0 -319
  93. package/test/_legacy/payment-resolver/stripe/subscriptions/trial-to-refund.json +0 -414
  94. package/test/_legacy/payment-resolver/stripe/subscriptions/trial-to-suspended.json +0 -319
  95. package/test/_legacy/payment-resolver/stripe/subscriptions/unsure.json +0 -339
  96. package/test/_legacy/test-new +0 -1178
  97. package/test/_legacy/test.md +0 -89
  98. package/test/_legacy/usage.js +0 -175
  99. package/test/_legacy/user.js +0 -31
  100. package/test/ai/tools-live.js +0 -170
  101. package/test/boot/emulator-boots.js +0 -37
  102. package/test/content/blog-generate.js +0 -160
  103. package/test/email/campaign-send.js +0 -45
  104. package/test/email/consent-lifecycle.js +0 -257
  105. package/test/email/feedback-and-plain-send.js +0 -52
  106. package/test/email/fixtures/editorial.json +0 -30
  107. package/test/email/fixtures/field-report.json +0 -53
  108. package/test/email/marketing-lifecycle.js +0 -132
  109. package/test/email/newsletter-generate.js +0 -819
  110. package/test/email/newsletter-templates.js +0 -491
  111. package/test/email/templates.js +0 -207
  112. package/test/email/transactional-send.js +0 -34
  113. package/test/email/transactional.js +0 -560
  114. package/test/email/validation.js +0 -710
  115. package/test/events/auth-delete-race.js +0 -201
  116. package/test/events/payments/journey-payments-cancel-endpoint.js +0 -100
  117. package/test/events/payments/journey-payments-cancel.js +0 -182
  118. package/test/events/payments/journey-payments-discount.js +0 -89
  119. package/test/events/payments/journey-payments-failure.js +0 -146
  120. package/test/events/payments/journey-payments-legacy-product.js +0 -149
  121. package/test/events/payments/journey-payments-one-time-failure.js +0 -111
  122. package/test/events/payments/journey-payments-one-time.js +0 -136
  123. package/test/events/payments/journey-payments-plan-change.js +0 -144
  124. package/test/events/payments/journey-payments-refund-webhook.js +0 -180
  125. package/test/events/payments/journey-payments-suspend.js +0 -181
  126. package/test/events/payments/journey-payments-trial-cancel.js +0 -130
  127. package/test/events/payments/journey-payments-trial.js +0 -171
  128. package/test/events/payments/journey-payments-uid-resolution.js +0 -132
  129. package/test/events/payments/journey-payments-upgrade.js +0 -135
  130. package/test/fixtures/chargebee/invoice-one-time.json +0 -27
  131. package/test/fixtures/chargebee/subscription-active.json +0 -44
  132. package/test/fixtures/chargebee/subscription-cancelled.json +0 -42
  133. package/test/fixtures/chargebee/subscription-in-trial.json +0 -41
  134. package/test/fixtures/chargebee/subscription-legacy-plan.json +0 -41
  135. package/test/fixtures/chargebee/subscription-non-renewing.json +0 -41
  136. package/test/fixtures/chargebee/subscription-paused.json +0 -42
  137. package/test/fixtures/chargebee/webhook-payment-failed.json +0 -51
  138. package/test/fixtures/chargebee/webhook-subscription-created.json +0 -47
  139. package/test/fixtures/paypal/order-approved.json +0 -62
  140. package/test/fixtures/paypal/order-completed.json +0 -110
  141. package/test/fixtures/paypal/subscription-active.json +0 -76
  142. package/test/fixtures/paypal/subscription-cancelled.json +0 -50
  143. package/test/fixtures/paypal/subscription-suspended.json +0 -65
  144. package/test/fixtures/stripe/checkout-session-completed.json +0 -130
  145. package/test/fixtures/stripe/invoice-payment-failed.json +0 -148
  146. package/test/fixtures/stripe/invoice-subscription-payment-failed.json +0 -28
  147. package/test/fixtures/stripe/subscription-active.json +0 -161
  148. package/test/fixtures/stripe/subscription-canceled.json +0 -161
  149. package/test/fixtures/stripe/subscription-trialing.json +0 -161
  150. package/test/functions/admin/database-read.js +0 -134
  151. package/test/functions/admin/database-write.js +0 -159
  152. package/test/functions/admin/edit-post.js +0 -366
  153. package/test/functions/admin/firestore-query.js +0 -207
  154. package/test/functions/admin/firestore-read.js +0 -129
  155. package/test/functions/admin/firestore-write.js +0 -105
  156. package/test/functions/admin/get-stats.js +0 -115
  157. package/test/functions/admin/send-email.js +0 -119
  158. package/test/functions/admin/send-notification.js +0 -208
  159. package/test/functions/admin/write-repo-content.js +0 -223
  160. package/test/functions/general/add-marketing-contact.js +0 -335
  161. package/test/functions/general/fetch-post.js +0 -54
  162. package/test/functions/general/generate-uuid.js +0 -114
  163. package/test/functions/test/authenticate.js +0 -64
  164. package/test/functions/user/create-custom-token.js +0 -73
  165. package/test/functions/user/delete.js +0 -135
  166. package/test/functions/user/get-active-sessions.js +0 -111
  167. package/test/functions/user/get-subscription-info.js +0 -99
  168. package/test/functions/user/regenerate-api-keys.js +0 -156
  169. package/test/functions/user/resolve.js +0 -52
  170. package/test/functions/user/sign-out-all-sessions.js +0 -94
  171. package/test/functions/user/sign-up.js +0 -252
  172. package/test/functions/user/submit-feedback.js +0 -104
  173. package/test/functions/user/validate-settings.js +0 -82
  174. package/test/helpers/ai-request-payload.js +0 -300
  175. package/test/helpers/ai-test-provider.js +0 -202
  176. package/test/helpers/ai-tools-format.js +0 -383
  177. package/test/helpers/content/blog-auto-publisher.js +0 -484
  178. package/test/helpers/content/feed-parser.js +0 -528
  179. package/test/helpers/content/ghostii-blocks.js +0 -134
  180. package/test/helpers/content/ghostii-feed-integration.js +0 -404
  181. package/test/helpers/content/ghostii-write-article.js +0 -243
  182. package/test/helpers/environment.js +0 -230
  183. package/test/helpers/infer-contact.js +0 -113
  184. package/test/helpers/merge-line-files.js +0 -271
  185. package/test/helpers/payment/chargebee/parse-webhook.js +0 -413
  186. package/test/helpers/payment/chargebee/to-unified-one-time.js +0 -147
  187. package/test/helpers/payment/chargebee/to-unified-subscription.js +0 -648
  188. package/test/helpers/payment/paypal/parse-webhook.js +0 -539
  189. package/test/helpers/payment/paypal/to-unified-one-time.js +0 -382
  190. package/test/helpers/payment/paypal/to-unified-subscription.js +0 -820
  191. package/test/helpers/payment/stripe/parse-webhook.js +0 -447
  192. package/test/helpers/payment/stripe/to-unified-one-time.js +0 -306
  193. package/test/helpers/payment/stripe/to-unified-subscription.js +0 -708
  194. package/test/helpers/sanitize.js +0 -222
  195. package/test/helpers/slugify.js +0 -394
  196. package/test/helpers/storage.js +0 -194
  197. package/test/helpers/user.js +0 -755
  198. package/test/helpers/webhook-forward.js +0 -418
  199. package/test/mcp/discovery.js +0 -53
  200. package/test/mcp/oauth.js +0 -161
  201. package/test/mcp/protocol.js +0 -268
  202. package/test/mcp/roles.js +0 -188
  203. package/test/mcp/utils.js +0 -245
  204. package/test/routes/admin/create-post.js +0 -364
  205. package/test/routes/admin/database.js +0 -131
  206. package/test/routes/admin/deduplicate-image-alts.js +0 -190
  207. package/test/routes/admin/email.js +0 -114
  208. package/test/routes/admin/firestore-query.js +0 -204
  209. package/test/routes/admin/firestore.js +0 -127
  210. package/test/routes/admin/infer-contact.js +0 -218
  211. package/test/routes/admin/notification.js +0 -198
  212. package/test/routes/admin/post-resize-image.js +0 -184
  213. package/test/routes/admin/post.js +0 -368
  214. package/test/routes/admin/repo-content.js +0 -223
  215. package/test/routes/admin/stats.js +0 -112
  216. package/test/routes/content/post.js +0 -54
  217. package/test/routes/general/uuid.js +0 -115
  218. package/test/routes/marketing/campaign.js +0 -125
  219. package/test/routes/marketing/contact.js +0 -370
  220. package/test/routes/marketing/email-preferences.js +0 -292
  221. package/test/routes/marketing/push-send.js +0 -32
  222. package/test/routes/marketing/webhook-forward.js +0 -61
  223. package/test/routes/marketing/webhook.js +0 -639
  224. package/test/routes/payments/cancel.js +0 -163
  225. package/test/routes/payments/discount.js +0 -80
  226. package/test/routes/payments/dispute-alert.js +0 -320
  227. package/test/routes/payments/intent.js +0 -336
  228. package/test/routes/payments/portal.js +0 -92
  229. package/test/routes/payments/refund.js +0 -179
  230. package/test/routes/payments/trial-eligibility.js +0 -71
  231. package/test/routes/payments/webhook.js +0 -107
  232. package/test/routes/test/authenticate.js +0 -59
  233. package/test/routes/test/schema.js +0 -554
  234. package/test/routes/test/usage.js +0 -342
  235. package/test/routes/user/api-keys.js +0 -156
  236. package/test/routes/user/delete.js +0 -136
  237. package/test/routes/user/feedback.js +0 -104
  238. package/test/routes/user/sessions.js +0 -199
  239. package/test/routes/user/settings-validate.js +0 -82
  240. package/test/routes/user/signup.js +0 -542
  241. package/test/routes/user/subscription.js +0 -99
  242. package/test/routes/user/token.js +0 -73
  243. package/test/routes/user/user.js +0 -157
  244. package/test/rules/notifications.js +0 -410
  245. package/test/rules/payments-carts.js +0 -371
  246. package/test/rules/user.js +0 -396
@@ -1,41 +0,0 @@
1
- {
2
- "id": "cb_sub_nonrenew_001",
3
- "customer_id": "cb_cust_004",
4
- "status": "non_renewing",
5
- "current_term_start": 1700000000,
6
- "current_term_end": 1702592000,
7
- "created_at": 1694643200,
8
- "started_at": 1694643200,
9
- "activated_at": 1694643200,
10
- "updated_at": 1701000000,
11
- "has_scheduled_changes": false,
12
- "channel": "web",
13
- "resource_version": 1701000000000,
14
- "deleted": false,
15
- "object": "subscription",
16
- "currency_code": "USD",
17
- "subscription_items": [
18
- {
19
- "item_price_id": "somiibo-pro-monthly",
20
- "item_type": "plan",
21
- "quantity": 1,
22
- "unit_price": 499,
23
- "amount": 499,
24
- "object": "subscription_item"
25
- }
26
- ],
27
- "meta_data": "{\"uid\":\"test-uid-004\",\"orderId\":\"4567-8901-2345\"}",
28
- "shipping_address": {
29
- "first_name": "NonRenew",
30
- "last_name": "User",
31
- "line1": "321 Pine Road",
32
- "city": "Austin",
33
- "state": "TX",
34
- "country": "US",
35
- "validation_status": "not_validated",
36
- "object": "shipping_address"
37
- },
38
- "due_invoices_count": 0,
39
- "mrr": 0,
40
- "has_scheduled_advance_invoices": false
41
- }
@@ -1,42 +0,0 @@
1
- {
2
- "id": "cb_sub_paused_001",
3
- "customer_id": "cb_cust_005",
4
- "status": "paused",
5
- "current_term_start": 1700000000,
6
- "current_term_end": 1702592000,
7
- "pause_date": 1701000000,
8
- "created_at": 1694643200,
9
- "started_at": 1694643200,
10
- "activated_at": 1694643200,
11
- "updated_at": 1701000000,
12
- "has_scheduled_changes": false,
13
- "channel": "web",
14
- "resource_version": 1701000000000,
15
- "deleted": false,
16
- "object": "subscription",
17
- "currency_code": "USD",
18
- "subscription_items": [
19
- {
20
- "item_price_id": "somiibo-pro-monthly",
21
- "item_type": "plan",
22
- "quantity": 1,
23
- "unit_price": 499,
24
- "amount": 499,
25
- "object": "subscription_item"
26
- }
27
- ],
28
- "meta_data": "{\"uid\":\"test-uid-005\",\"orderId\":\"5678-9012-3456\"}",
29
- "shipping_address": {
30
- "first_name": "Paused",
31
- "last_name": "User",
32
- "line1": "654 Maple Lane",
33
- "city": "Seattle",
34
- "state": "WA",
35
- "country": "US",
36
- "validation_status": "not_validated",
37
- "object": "shipping_address"
38
- },
39
- "due_invoices_count": 0,
40
- "mrr": 0,
41
- "has_scheduled_advance_invoices": false
42
- }
@@ -1,51 +0,0 @@
1
- {
2
- "id": "ev_cb_payment_failed_001",
3
- "occurred_at": 1700500000,
4
- "source": "system",
5
- "event_type": "payment_failed",
6
- "api_version": "v2",
7
- "content": {
8
- "subscription": {
9
- "id": "cb_sub_active_001",
10
- "customer_id": "cb_cust_001",
11
- "status": "active",
12
- "current_term_start": 1700000000,
13
- "current_term_end": 1702592000,
14
- "subscription_items": [
15
- {
16
- "item_price_id": "somiibo-pro-monthly",
17
- "item_type": "plan",
18
- "quantity": 1,
19
- "unit_price": 499,
20
- "amount": 499
21
- }
22
- ],
23
- "meta_data": "{\"uid\":\"test-uid-001\",\"orderId\":\"1234-5678-9012\"}",
24
- "currency_code": "USD",
25
- "object": "subscription"
26
- },
27
- "customer": {
28
- "id": "cb_cust_001",
29
- "first_name": "Test",
30
- "last_name": "User",
31
- "email": "test@example.com",
32
- "object": "customer"
33
- },
34
- "invoice": {
35
- "id": "inv_cb_002",
36
- "subscription_id": "cb_sub_active_001",
37
- "status": "not_paid",
38
- "total": 499,
39
- "amount_due": 499,
40
- "currency_code": "USD",
41
- "object": "invoice"
42
- },
43
- "transaction": {
44
- "id": "txn_cb_002",
45
- "status": "failure",
46
- "amount": 499,
47
- "currency_code": "USD",
48
- "object": "transaction"
49
- }
50
- }
51
- }
@@ -1,47 +0,0 @@
1
- {
2
- "id": "ev_cb_sub_created_001",
3
- "occurred_at": 1700000000,
4
- "source": "hosted_page",
5
- "event_type": "subscription_created",
6
- "api_version": "v2",
7
- "content": {
8
- "subscription": {
9
- "id": "cb_sub_active_001",
10
- "customer_id": "cb_cust_001",
11
- "status": "active",
12
- "current_term_start": 1700000000,
13
- "current_term_end": 1702592000,
14
- "created_at": 1700000000,
15
- "started_at": 1700000000,
16
- "activated_at": 1700000000,
17
- "subscription_items": [
18
- {
19
- "item_price_id": "somiibo-pro-monthly",
20
- "item_type": "plan",
21
- "quantity": 1,
22
- "unit_price": 499,
23
- "amount": 499
24
- }
25
- ],
26
- "meta_data": "{\"uid\":\"test-uid-001\",\"orderId\":\"1234-5678-9012\"}",
27
- "currency_code": "USD",
28
- "object": "subscription"
29
- },
30
- "customer": {
31
- "id": "cb_cust_001",
32
- "first_name": "Test",
33
- "last_name": "User",
34
- "email": "test@example.com",
35
- "object": "customer"
36
- },
37
- "invoice": {
38
- "id": "inv_cb_001",
39
- "subscription_id": "cb_sub_active_001",
40
- "status": "paid",
41
- "total": 499,
42
- "amount_paid": 499,
43
- "currency_code": "USD",
44
- "object": "invoice"
45
- }
46
- }
47
- }
@@ -1,62 +0,0 @@
1
- {
2
- "id": "5UX02069M9686893E",
3
- "intent": "CAPTURE",
4
- "status": "APPROVED",
5
- "payment_source": {
6
- "paypal": {
7
- "email_address": "sb-buyer@personal.example.com",
8
- "account_id": "BUYERPAYERID123",
9
- "account_status": "VERIFIED",
10
- "name": {
11
- "given_name": "Test",
12
- "surname": "Buyer"
13
- },
14
- "address": {
15
- "country_code": "US"
16
- }
17
- }
18
- },
19
- "purchase_units": [
20
- {
21
- "reference_id": "default",
22
- "amount": {
23
- "currency_code": "USD",
24
- "value": "9.99"
25
- },
26
- "payee": {
27
- "email_address": "itw.creative.works-facilitator@gmail.com",
28
- "merchant_id": "C92NPPXDJSMXE",
29
- "display_data": {
30
- "brand_name": "Test Brand"
31
- }
32
- },
33
- "description": "100 Credits",
34
- "custom_id": "uid:test-user-123,orderId:ord-test-456,productId:credits-100"
35
- }
36
- ],
37
- "payer": {
38
- "name": {
39
- "given_name": "Test",
40
- "surname": "Buyer"
41
- },
42
- "email_address": "sb-buyer@personal.example.com",
43
- "payer_id": "BUYERPAYERID123",
44
- "address": {
45
- "country_code": "US"
46
- }
47
- },
48
- "create_time": "2026-03-04T10:09:16Z",
49
- "update_time": "2026-03-04T10:10:30Z",
50
- "links": [
51
- {
52
- "href": "https://api.sandbox.paypal.com/v2/checkout/orders/5UX02069M9686893E",
53
- "rel": "self",
54
- "method": "GET"
55
- },
56
- {
57
- "href": "https://api.sandbox.paypal.com/v2/checkout/orders/5UX02069M9686893E/capture",
58
- "rel": "capture",
59
- "method": "POST"
60
- }
61
- ]
62
- }
@@ -1,110 +0,0 @@
1
- {
2
- "id": "5UX02069M9686893E",
3
- "intent": "CAPTURE",
4
- "status": "COMPLETED",
5
- "payment_source": {
6
- "paypal": {
7
- "email_address": "sb-buyer@personal.example.com",
8
- "account_id": "BUYERPAYERID123",
9
- "account_status": "VERIFIED",
10
- "name": {
11
- "given_name": "Test",
12
- "surname": "Buyer"
13
- },
14
- "address": {
15
- "country_code": "US"
16
- }
17
- }
18
- },
19
- "purchase_units": [
20
- {
21
- "reference_id": "default",
22
- "amount": {
23
- "currency_code": "USD",
24
- "value": "9.99"
25
- },
26
- "payee": {
27
- "email_address": "itw.creative.works-facilitator@gmail.com",
28
- "merchant_id": "C92NPPXDJSMXE",
29
- "display_data": {
30
- "brand_name": "Test Brand"
31
- }
32
- },
33
- "description": "100 Credits",
34
- "custom_id": "uid:test-user-123,orderId:ord-test-456,productId:credits-100",
35
- "payments": {
36
- "captures": [
37
- {
38
- "id": "8MC585209K746631M",
39
- "status": "COMPLETED",
40
- "amount": {
41
- "currency_code": "USD",
42
- "value": "9.99"
43
- },
44
- "final_capture": true,
45
- "seller_protection": {
46
- "status": "ELIGIBLE",
47
- "dispute_categories": [
48
- "ITEM_NOT_RECEIVED",
49
- "UNAUTHORIZED_TRANSACTION"
50
- ]
51
- },
52
- "seller_receivable_breakdown": {
53
- "gross_amount": {
54
- "currency_code": "USD",
55
- "value": "9.99"
56
- },
57
- "paypal_fee": {
58
- "currency_code": "USD",
59
- "value": "0.69"
60
- },
61
- "net_amount": {
62
- "currency_code": "USD",
63
- "value": "9.30"
64
- }
65
- },
66
- "links": [
67
- {
68
- "href": "https://api.sandbox.paypal.com/v2/payments/captures/8MC585209K746631M",
69
- "rel": "self",
70
- "method": "GET"
71
- },
72
- {
73
- "href": "https://api.sandbox.paypal.com/v2/payments/captures/8MC585209K746631M/refund",
74
- "rel": "refund",
75
- "method": "POST"
76
- },
77
- {
78
- "href": "https://api.sandbox.paypal.com/v2/checkout/orders/5UX02069M9686893E",
79
- "rel": "up",
80
- "method": "GET"
81
- }
82
- ],
83
- "create_time": "2026-03-04T10:10:45Z",
84
- "update_time": "2026-03-04T10:10:45Z"
85
- }
86
- ]
87
- }
88
- }
89
- ],
90
- "payer": {
91
- "name": {
92
- "given_name": "Test",
93
- "surname": "Buyer"
94
- },
95
- "email_address": "sb-buyer@personal.example.com",
96
- "payer_id": "BUYERPAYERID123",
97
- "address": {
98
- "country_code": "US"
99
- }
100
- },
101
- "create_time": "2026-03-04T10:09:16Z",
102
- "update_time": "2026-03-04T10:10:45Z",
103
- "links": [
104
- {
105
- "href": "https://api.sandbox.paypal.com/v2/checkout/orders/5UX02069M9686893E",
106
- "rel": "self",
107
- "method": "GET"
108
- }
109
- ]
110
- }
@@ -1,76 +0,0 @@
1
- {
2
- "status": "ACTIVE",
3
- "id": "I-MTPRX0B9LV4R",
4
- "plan_id": "P-4BS10577GL664413KNGUAJ5Q",
5
- "start_time": "2026-03-04T10:09:59Z",
6
- "quantity": "1",
7
- "create_time": "2026-03-04T10:09:59Z",
8
- "update_time": "2026-03-04T10:12:00Z",
9
- "custom_id": "uid:test-user-789,orderId:ord-sub-123",
10
- "plan_overridden": false,
11
- "subscriber": {
12
- "email_address": "sb-buyer@personal.example.com",
13
- "payer_id": "BUYERPAYERID123",
14
- "name": {
15
- "given_name": "Test",
16
- "surname": "Buyer"
17
- },
18
- "shipping_address": {
19
- "name": {
20
- "full_name": "Test Buyer"
21
- }
22
- }
23
- },
24
- "billing_info": {
25
- "outstanding_balance": {
26
- "currency_code": "USD",
27
- "value": "0.0"
28
- },
29
- "cycle_executions": [
30
- {
31
- "tenure_type": "REGULAR",
32
- "sequence": 1,
33
- "cycles_completed": 1,
34
- "cycles_remaining": 0,
35
- "current_pricing_scheme_version": 1,
36
- "total_cycles": 0
37
- }
38
- ],
39
- "last_payment": {
40
- "amount": {
41
- "currency_code": "USD",
42
- "value": "15.0"
43
- },
44
- "time": "2026-03-04T10:12:00Z"
45
- },
46
- "next_billing_time": "2026-04-04T10:00:00Z",
47
- "failed_payments_count": 0
48
- },
49
- "links": [
50
- {
51
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R",
52
- "rel": "edit",
53
- "method": "PATCH"
54
- },
55
- {
56
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R",
57
- "rel": "self",
58
- "method": "GET"
59
- },
60
- {
61
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R/suspend",
62
- "rel": "suspend",
63
- "method": "POST"
64
- },
65
- {
66
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R/cancel",
67
- "rel": "cancel",
68
- "method": "POST"
69
- },
70
- {
71
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R/capture",
72
- "rel": "capture",
73
- "method": "POST"
74
- }
75
- ]
76
- }
@@ -1,50 +0,0 @@
1
- {
2
- "status": "CANCELLED",
3
- "id": "I-MTPRX0B9LV4R",
4
- "plan_id": "P-4BS10577GL664413KNGUAJ5Q",
5
- "start_time": "2026-03-04T10:09:59Z",
6
- "quantity": "1",
7
- "create_time": "2026-03-04T10:09:59Z",
8
- "update_time": "2026-03-15T08:30:00Z",
9
- "custom_id": "uid:test-user-789,orderId:ord-sub-123",
10
- "plan_overridden": false,
11
- "subscriber": {
12
- "email_address": "sb-buyer@personal.example.com",
13
- "payer_id": "BUYERPAYERID123",
14
- "name": {
15
- "given_name": "Test",
16
- "surname": "Buyer"
17
- }
18
- },
19
- "billing_info": {
20
- "outstanding_balance": {
21
- "currency_code": "USD",
22
- "value": "0.0"
23
- },
24
- "cycle_executions": [
25
- {
26
- "tenure_type": "REGULAR",
27
- "sequence": 1,
28
- "cycles_completed": 1,
29
- "cycles_remaining": 0,
30
- "current_pricing_scheme_version": 1,
31
- "total_cycles": 0
32
- }
33
- ],
34
- "last_payment": {
35
- "amount": {
36
- "currency_code": "USD",
37
- "value": "15.0"
38
- },
39
- "time": "2026-03-04T10:12:00Z"
40
- },
41
- "failed_payments_count": 0
42
- },
43
- "links": [
44
- {
45
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R",
46
- "rel": "self",
47
- "method": "GET"
48
- }
49
- ]
50
- }
@@ -1,65 +0,0 @@
1
- {
2
- "status": "SUSPENDED",
3
- "id": "I-MTPRX0B9LV4R",
4
- "plan_id": "P-4BS10577GL664413KNGUAJ5Q",
5
- "start_time": "2026-03-04T10:09:59Z",
6
- "quantity": "1",
7
- "create_time": "2026-03-04T10:09:59Z",
8
- "update_time": "2026-03-20T14:00:00Z",
9
- "custom_id": "uid:test-user-789,orderId:ord-sub-123",
10
- "plan_overridden": false,
11
- "subscriber": {
12
- "email_address": "sb-buyer@personal.example.com",
13
- "payer_id": "BUYERPAYERID123",
14
- "name": {
15
- "given_name": "Test",
16
- "surname": "Buyer"
17
- }
18
- },
19
- "billing_info": {
20
- "outstanding_balance": {
21
- "currency_code": "USD",
22
- "value": "15.0"
23
- },
24
- "cycle_executions": [
25
- {
26
- "tenure_type": "REGULAR",
27
- "sequence": 1,
28
- "cycles_completed": 1,
29
- "cycles_remaining": 0,
30
- "current_pricing_scheme_version": 1,
31
- "total_cycles": 0
32
- }
33
- ],
34
- "last_payment": {
35
- "amount": {
36
- "currency_code": "USD",
37
- "value": "15.0"
38
- },
39
- "time": "2026-03-04T10:12:00Z"
40
- },
41
- "failed_payments_count": 3
42
- },
43
- "links": [
44
- {
45
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R",
46
- "rel": "edit",
47
- "method": "PATCH"
48
- },
49
- {
50
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R",
51
- "rel": "self",
52
- "method": "GET"
53
- },
54
- {
55
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R/activate",
56
- "rel": "activate",
57
- "method": "POST"
58
- },
59
- {
60
- "href": "https://api.sandbox.paypal.com/v1/billing/subscriptions/I-MTPRX0B9LV4R/cancel",
61
- "rel": "cancel",
62
- "method": "POST"
63
- }
64
- ]
65
- }
@@ -1,130 +0,0 @@
1
- {
2
- "id": "cs_test_a1N31jwL64dmiOkxYQryCc69EmaczRofyGcsTQgjJOaKLpmfLDm87x4cY1",
3
- "object": "checkout.session",
4
- "adaptive_pricing": {
5
- "enabled": true
6
- },
7
- "after_expiration": null,
8
- "allow_promotion_codes": null,
9
- "amount_subtotal": 3000,
10
- "amount_total": 3000,
11
- "automatic_tax": {
12
- "enabled": false,
13
- "liability": null,
14
- "provider": null,
15
- "status": null
16
- },
17
- "billing_address_collection": null,
18
- "branding_settings": {
19
- "background_color": "#ffffff",
20
- "border_style": "rounded",
21
- "button_color": "#6b5fe8",
22
- "display_name": "ITW Staging",
23
- "font_family": "default",
24
- "icon": {
25
- "file": "file_1PVKbpDEGraYraOkAsWXvanJ",
26
- "type": "file"
27
- },
28
- "logo": {
29
- "file": "file_1PVKbrDEGraYraOk3dgbXv6O",
30
- "type": "file"
31
- }
32
- },
33
- "cancel_url": "https://httpbin.org/post",
34
- "client_reference_id": null,
35
- "client_secret": null,
36
- "collected_information": null,
37
- "consent": null,
38
- "consent_collection": null,
39
- "created": 1771624428,
40
- "currency": "usd",
41
- "currency_conversion": null,
42
- "custom_fields": [],
43
- "custom_text": {
44
- "after_submit": null,
45
- "shipping_address": null,
46
- "submit": null,
47
- "terms_of_service_acceptance": null
48
- },
49
- "customer": null,
50
- "customer_account": null,
51
- "customer_creation": "if_required",
52
- "customer_details": {
53
- "address": {
54
- "city": "South San Francisco",
55
- "country": "US",
56
- "line1": "354 Oyster Point Blvd",
57
- "line2": null,
58
- "postal_code": "94080",
59
- "state": "CA"
60
- },
61
- "business_name": null,
62
- "email": "stripe@example.com",
63
- "individual_name": null,
64
- "name": "Jenny Rosen",
65
- "phone": null,
66
- "tax_exempt": "none",
67
- "tax_ids": []
68
- },
69
- "customer_email": null,
70
- "discounts": [],
71
- "expires_at": 1771710828,
72
- "invoice": null,
73
- "invoice_creation": {
74
- "enabled": false,
75
- "invoice_data": {
76
- "account_tax_ids": null,
77
- "custom_fields": null,
78
- "description": null,
79
- "footer": null,
80
- "issuer": null,
81
- "metadata": {},
82
- "rendering_options": null
83
- }
84
- },
85
- "livemode": false,
86
- "locale": null,
87
- "metadata": {},
88
- "mode": "payment",
89
- "origin_context": null,
90
- "payment_intent": "pi_3T31dxDEGraYraOk0Lm5iB2n",
91
- "payment_link": null,
92
- "payment_method_collection": "if_required",
93
- "payment_method_configuration_details": {
94
- "id": "pmc_1OmUeLDEGraYraOkK8MQcAeS",
95
- "parent": null
96
- },
97
- "payment_method_options": {
98
- "card": {
99
- "request_three_d_secure": "automatic"
100
- }
101
- },
102
- "payment_method_types": [
103
- "card",
104
- "link",
105
- "cashapp"
106
- ],
107
- "payment_status": "paid",
108
- "permissions": null,
109
- "phone_number_collection": {
110
- "enabled": false
111
- },
112
- "recovered_from": null,
113
- "saved_payment_method_options": null,
114
- "setup_intent": null,
115
- "shipping_address_collection": null,
116
- "shipping_cost": null,
117
- "shipping_options": [],
118
- "status": "complete",
119
- "submit_type": null,
120
- "subscription": null,
121
- "success_url": "https://httpbin.org/post",
122
- "total_details": {
123
- "amount_discount": 0,
124
- "amount_shipping": 0,
125
- "amount_tax": 0
126
- },
127
- "ui_mode": "hosted",
128
- "url": null,
129
- "wallet_options": null
130
- }