@adonis-agora/payments 0.2.0 → 0.4.0

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 (346) hide show
  1. package/CHANGELOG.md +2375 -0
  2. package/dist/assets/spa/assets/index-B7rU8eIL.css +2 -0
  3. package/dist/assets/spa/assets/index-BcM2VH5k.js +10 -0
  4. package/dist/assets/spa/assets/index-BcM2VH5k.js.map +1 -0
  5. package/dist/assets/spa/index.html +20 -0
  6. package/dist/commands/main.d.ts +4 -3
  7. package/dist/commands/main.d.ts.map +1 -1
  8. package/dist/commands/main.js +9 -2
  9. package/dist/commands/main.js.map +1 -1
  10. package/dist/commands/make_billable.d.ts.map +1 -1
  11. package/dist/commands/make_billable.js +1 -1
  12. package/dist/commands/make_billable.js.map +1 -1
  13. package/dist/commands/make_webhook_handler.d.ts.map +1 -1
  14. package/dist/commands/make_webhook_handler.js +1 -1
  15. package/dist/commands/make_webhook_handler.js.map +1 -1
  16. package/dist/commands/payments_health.d.ts +31 -0
  17. package/dist/commands/payments_health.d.ts.map +1 -0
  18. package/dist/commands/payments_health.js +113 -0
  19. package/dist/commands/payments_health.js.map +1 -0
  20. package/dist/commands/payments_sync.d.ts +18 -4
  21. package/dist/commands/payments_sync.d.ts.map +1 -1
  22. package/dist/commands/payments_sync.js +136 -40
  23. package/dist/commands/payments_sync.js.map +1 -1
  24. package/dist/commands/payments_webhook.d.ts.map +1 -1
  25. package/dist/commands/payments_webhook.js.map +1 -1
  26. package/dist/configure.d.ts +12 -5
  27. package/dist/configure.d.ts.map +1 -1
  28. package/dist/configure.js +18 -5
  29. package/dist/configure.js.map +1 -1
  30. package/dist/providers/dashboard_provider.d.ts +97 -0
  31. package/dist/providers/dashboard_provider.d.ts.map +1 -0
  32. package/dist/providers/dashboard_provider.js +430 -0
  33. package/dist/providers/dashboard_provider.js.map +1 -0
  34. package/dist/providers/payments_client_provider.d.ts +41 -0
  35. package/dist/providers/payments_client_provider.d.ts.map +1 -0
  36. package/dist/providers/payments_client_provider.js +95 -0
  37. package/dist/providers/payments_client_provider.js.map +1 -0
  38. package/dist/providers/payments_provider.d.ts +35 -0
  39. package/dist/providers/payments_provider.d.ts.map +1 -1
  40. package/dist/providers/payments_provider.js +250 -36
  41. package/dist/providers/payments_provider.js.map +1 -1
  42. package/dist/src/billing/billing_health.d.ts +85 -0
  43. package/dist/src/billing/billing_health.d.ts.map +1 -0
  44. package/dist/src/billing/billing_health.js +155 -0
  45. package/dist/src/billing/billing_health.js.map +1 -0
  46. package/dist/src/billing/billing_overview.d.ts +4 -3
  47. package/dist/src/billing/billing_overview.d.ts.map +1 -1
  48. package/dist/src/billing/billing_overview.js +14 -5
  49. package/dist/src/billing/billing_overview.js.map +1 -1
  50. package/dist/src/billing/billing_store.d.ts +634 -5
  51. package/dist/src/billing/billing_store.d.ts.map +1 -1
  52. package/dist/src/billing/billing_store.js +18 -1
  53. package/dist/src/billing/billing_store.js.map +1 -1
  54. package/dist/src/billing/index.d.ts +4 -3
  55. package/dist/src/billing/index.d.ts.map +1 -1
  56. package/dist/src/billing/index.js +2 -1
  57. package/dist/src/billing/index.js.map +1 -1
  58. package/dist/src/billing/list_query.d.ts +16 -0
  59. package/dist/src/billing/list_query.d.ts.map +1 -0
  60. package/dist/src/billing/list_query.js +28 -0
  61. package/dist/src/billing/list_query.js.map +1 -0
  62. package/dist/src/billing/lucid_billing_store.d.ts +122 -4
  63. package/dist/src/billing/lucid_billing_store.d.ts.map +1 -1
  64. package/dist/src/billing/lucid_billing_store.js +811 -13
  65. package/dist/src/billing/lucid_billing_store.js.map +1 -1
  66. package/dist/src/billing/mixins/index.d.ts +5 -2
  67. package/dist/src/billing/mixins/index.d.ts.map +1 -1
  68. package/dist/src/billing/mixins/index.js +5 -2
  69. package/dist/src/billing/mixins/index.js.map +1 -1
  70. package/dist/src/billing/mixins/with_audit_event.d.ts +48 -0
  71. package/dist/src/billing/mixins/with_audit_event.d.ts.map +1 -0
  72. package/dist/src/billing/mixins/with_audit_event.js +77 -0
  73. package/dist/src/billing/mixins/with_audit_event.js.map +1 -0
  74. package/dist/src/billing/mixins/with_billable.d.ts.map +1 -1
  75. package/dist/src/billing/mixins/with_customer.d.ts +39 -0
  76. package/dist/src/billing/mixins/with_customer.d.ts.map +1 -0
  77. package/dist/src/billing/mixins/with_customer.js +68 -0
  78. package/dist/src/billing/mixins/with_customer.js.map +1 -0
  79. package/dist/src/billing/mixins/with_dispute.d.ts +68 -0
  80. package/dist/src/billing/mixins/with_dispute.d.ts.map +1 -0
  81. package/dist/src/billing/mixins/with_dispute.js +83 -0
  82. package/dist/src/billing/mixins/with_dispute.js.map +1 -0
  83. package/dist/src/billing/mixins/with_payment.d.ts +42 -0
  84. package/dist/src/billing/mixins/with_payment.d.ts.map +1 -1
  85. package/dist/src/billing/mixins/with_payment.js +29 -3
  86. package/dist/src/billing/mixins/with_payment.js.map +1 -1
  87. package/dist/src/billing/mixins/with_subscription.d.ts +7 -0
  88. package/dist/src/billing/mixins/with_subscription.d.ts.map +1 -1
  89. package/dist/src/billing/mixins/with_subscription.js +15 -1
  90. package/dist/src/billing/mixins/with_subscription.js.map +1 -1
  91. package/dist/src/billing/mixins/with_usage_event.d.ts +7 -0
  92. package/dist/src/billing/mixins/with_usage_event.d.ts.map +1 -1
  93. package/dist/src/billing/mixins/with_usage_event.js +15 -1
  94. package/dist/src/billing/mixins/with_usage_event.js.map +1 -1
  95. package/dist/src/billing/mixins/with_webhook_event.d.ts +18 -0
  96. package/dist/src/billing/mixins/with_webhook_event.d.ts.map +1 -1
  97. package/dist/src/billing/mixins/with_webhook_event.js +18 -1
  98. package/dist/src/billing/mixins/with_webhook_event.js.map +1 -1
  99. package/dist/src/billing/resolve_dispatch.d.ts +22 -0
  100. package/dist/src/billing/resolve_dispatch.d.ts.map +1 -0
  101. package/dist/src/billing/resolve_dispatch.js +44 -0
  102. package/dist/src/billing/resolve_dispatch.js.map +1 -0
  103. package/dist/src/billing/resolve_store.d.ts +18 -0
  104. package/dist/src/billing/resolve_store.d.ts.map +1 -0
  105. package/dist/src/billing/resolve_store.js +35 -0
  106. package/dist/src/billing/resolve_store.js.map +1 -0
  107. package/dist/src/billing/schema.d.ts +108 -0
  108. package/dist/src/billing/schema.d.ts.map +1 -0
  109. package/dist/src/billing/schema.js +350 -0
  110. package/dist/src/billing/schema.js.map +1 -0
  111. package/dist/src/billing/webhook_dispatcher.d.ts +95 -16
  112. package/dist/src/billing/webhook_dispatcher.d.ts.map +1 -1
  113. package/dist/src/billing/webhook_dispatcher.js +186 -33
  114. package/dist/src/billing/webhook_dispatcher.js.map +1 -1
  115. package/dist/src/billing/webhook_events.d.ts +67 -1
  116. package/dist/src/billing/webhook_events.d.ts.map +1 -1
  117. package/dist/src/billing/webhook_events.js +15 -0
  118. package/dist/src/billing/webhook_events.js.map +1 -1
  119. package/dist/src/billing/webhook_processor.d.ts.map +1 -1
  120. package/dist/src/billing/webhook_processor.js +325 -5
  121. package/dist/src/billing/webhook_processor.js.map +1 -1
  122. package/dist/src/client/define_config.d.ts +150 -0
  123. package/dist/src/client/define_config.d.ts.map +1 -0
  124. package/dist/src/client/define_config.js +98 -0
  125. package/dist/src/client/define_config.js.map +1 -0
  126. package/dist/src/client/handlers.d.ts +71 -0
  127. package/dist/src/client/handlers.d.ts.map +1 -0
  128. package/dist/src/client/handlers.js +119 -0
  129. package/dist/src/client/handlers.js.map +1 -0
  130. package/dist/src/client/index.d.ts +15 -0
  131. package/dist/src/client/index.d.ts.map +1 -0
  132. package/dist/src/client/index.js +12 -0
  133. package/dist/src/client/index.js.map +1 -0
  134. package/dist/src/client/statuses.d.ts +38 -0
  135. package/dist/src/client/statuses.d.ts.map +1 -0
  136. package/dist/src/client/statuses.js +42 -0
  137. package/dist/src/client/statuses.js.map +1 -0
  138. package/dist/src/dashboard/actions.d.ts +143 -0
  139. package/dist/src/dashboard/actions.d.ts.map +1 -0
  140. package/dist/src/dashboard/actions.js +112 -0
  141. package/dist/src/dashboard/actions.js.map +1 -0
  142. package/dist/src/dashboard/auth.d.ts +136 -0
  143. package/dist/src/dashboard/auth.d.ts.map +1 -0
  144. package/dist/src/dashboard/auth.js +152 -0
  145. package/dist/src/dashboard/auth.js.map +1 -0
  146. package/dist/src/dashboard/define_config.d.ts +80 -0
  147. package/dist/src/dashboard/define_config.d.ts.map +1 -0
  148. package/dist/src/dashboard/define_config.js +83 -0
  149. package/dist/src/dashboard/define_config.js.map +1 -0
  150. package/dist/src/dashboard/handlers.d.ts +281 -0
  151. package/dist/src/dashboard/handlers.d.ts.map +1 -0
  152. package/dist/src/dashboard/handlers.js +960 -0
  153. package/dist/src/dashboard/handlers.js.map +1 -0
  154. package/dist/src/dashboard/index.d.ts +17 -0
  155. package/dist/src/dashboard/index.d.ts.map +1 -0
  156. package/dist/src/dashboard/index.js +13 -0
  157. package/dist/src/dashboard/index.js.map +1 -0
  158. package/dist/src/dashboard/login_page.d.ts +23 -0
  159. package/dist/src/dashboard/login_page.d.ts.map +1 -0
  160. package/dist/src/dashboard/login_page.js +170 -0
  161. package/dist/src/dashboard/login_page.js.map +1 -0
  162. package/dist/src/dashboard/period.d.ts +31 -0
  163. package/dist/src/dashboard/period.d.ts.map +1 -0
  164. package/dist/src/dashboard/period.js +44 -0
  165. package/dist/src/dashboard/period.js.map +1 -0
  166. package/dist/src/dashboard/session_cookie.d.ts +42 -0
  167. package/dist/src/dashboard/session_cookie.d.ts.map +1 -0
  168. package/dist/src/dashboard/session_cookie.js +97 -0
  169. package/dist/src/dashboard/session_cookie.js.map +1 -0
  170. package/dist/src/dashboard/spa.d.ts +24 -0
  171. package/dist/src/dashboard/spa.d.ts.map +1 -0
  172. package/dist/src/dashboard/spa.js +52 -0
  173. package/dist/src/dashboard/spa.js.map +1 -0
  174. package/dist/src/define_config.d.ts +245 -10
  175. package/dist/src/define_config.d.ts.map +1 -1
  176. package/dist/src/define_config.js +97 -1
  177. package/dist/src/define_config.js.map +1 -1
  178. package/dist/src/diagnostics.d.ts +287 -7
  179. package/dist/src/diagnostics.d.ts.map +1 -1
  180. package/dist/src/diagnostics.js +317 -1
  181. package/dist/src/diagnostics.js.map +1 -1
  182. package/dist/src/driver.d.ts +139 -5
  183. package/dist/src/driver.d.ts.map +1 -1
  184. package/dist/src/drivers/abacate.d.ts +13 -3
  185. package/dist/src/drivers/abacate.d.ts.map +1 -1
  186. package/dist/src/drivers/abacate.js +112 -19
  187. package/dist/src/drivers/abacate.js.map +1 -1
  188. package/dist/src/drivers/adyen.d.ts +164 -0
  189. package/dist/src/drivers/adyen.d.ts.map +1 -0
  190. package/dist/src/drivers/adyen.js +678 -0
  191. package/dist/src/drivers/adyen.js.map +1 -0
  192. package/dist/src/drivers/asaas.d.ts +53 -3
  193. package/dist/src/drivers/asaas.d.ts.map +1 -1
  194. package/dist/src/drivers/asaas.js +364 -29
  195. package/dist/src/drivers/asaas.js.map +1 -1
  196. package/dist/src/drivers/dodo.d.ts +135 -0
  197. package/dist/src/drivers/dodo.d.ts.map +1 -0
  198. package/dist/src/drivers/dodo.js +864 -0
  199. package/dist/src/drivers/dodo.js.map +1 -0
  200. package/dist/src/drivers/efi.d.ts +98 -0
  201. package/dist/src/drivers/efi.d.ts.map +1 -0
  202. package/dist/src/drivers/efi.js +628 -0
  203. package/dist/src/drivers/efi.js.map +1 -0
  204. package/dist/src/drivers/infinitepay.d.ts +156 -0
  205. package/dist/src/drivers/infinitepay.d.ts.map +1 -0
  206. package/dist/src/drivers/infinitepay.js +321 -0
  207. package/dist/src/drivers/infinitepay.js.map +1 -0
  208. package/dist/src/drivers/lemonsqueezy.d.ts +125 -0
  209. package/dist/src/drivers/lemonsqueezy.d.ts.map +1 -0
  210. package/dist/src/drivers/lemonsqueezy.js +632 -0
  211. package/dist/src/drivers/lemonsqueezy.js.map +1 -0
  212. package/dist/src/drivers/mercadopago.d.ts +97 -0
  213. package/dist/src/drivers/mercadopago.d.ts.map +1 -0
  214. package/dist/src/drivers/mercadopago.js +844 -0
  215. package/dist/src/drivers/mercadopago.js.map +1 -0
  216. package/dist/src/drivers/mollie.d.ts +125 -0
  217. package/dist/src/drivers/mollie.d.ts.map +1 -0
  218. package/dist/src/drivers/mollie.js +812 -0
  219. package/dist/src/drivers/mollie.js.map +1 -0
  220. package/dist/src/drivers/paddle.d.ts +148 -0
  221. package/dist/src/drivers/paddle.d.ts.map +1 -0
  222. package/dist/src/drivers/paddle.js +738 -0
  223. package/dist/src/drivers/paddle.js.map +1 -0
  224. package/dist/src/drivers/pagarme.d.ts +97 -0
  225. package/dist/src/drivers/pagarme.d.ts.map +1 -0
  226. package/dist/src/drivers/pagarme.js +829 -0
  227. package/dist/src/drivers/pagarme.js.map +1 -0
  228. package/dist/src/drivers/pagbank.d.ts +57 -0
  229. package/dist/src/drivers/pagbank.d.ts.map +1 -0
  230. package/dist/src/drivers/pagbank.js +499 -0
  231. package/dist/src/drivers/pagbank.js.map +1 -0
  232. package/dist/src/drivers/paypal.d.ts +120 -0
  233. package/dist/src/drivers/paypal.d.ts.map +1 -0
  234. package/dist/src/drivers/paypal.js +891 -0
  235. package/dist/src/drivers/paypal.js.map +1 -0
  236. package/dist/src/drivers/polar.d.ts +118 -0
  237. package/dist/src/drivers/polar.d.ts.map +1 -0
  238. package/dist/src/drivers/polar.js +604 -0
  239. package/dist/src/drivers/polar.js.map +1 -0
  240. package/dist/src/drivers/razorpay.d.ts +103 -0
  241. package/dist/src/drivers/razorpay.d.ts.map +1 -0
  242. package/dist/src/drivers/razorpay.js +867 -0
  243. package/dist/src/drivers/razorpay.js.map +1 -0
  244. package/dist/src/drivers/shared.d.ts +33 -0
  245. package/dist/src/drivers/shared.d.ts.map +1 -0
  246. package/dist/src/drivers/shared.js +37 -0
  247. package/dist/src/drivers/shared.js.map +1 -0
  248. package/dist/src/drivers/square.d.ts +133 -0
  249. package/dist/src/drivers/square.d.ts.map +1 -0
  250. package/dist/src/drivers/square.js +905 -0
  251. package/dist/src/drivers/square.js.map +1 -0
  252. package/dist/src/drivers/stripe.d.ts +41 -4
  253. package/dist/src/drivers/stripe.d.ts.map +1 -1
  254. package/dist/src/drivers/stripe.js +823 -26
  255. package/dist/src/drivers/stripe.js.map +1 -1
  256. package/dist/src/drivers/woovi.d.ts +11 -4
  257. package/dist/src/drivers/woovi.d.ts.map +1 -1
  258. package/dist/src/drivers/woovi.js +162 -29
  259. package/dist/src/drivers/woovi.js.map +1 -1
  260. package/dist/src/ensure_customer.d.ts +34 -1
  261. package/dist/src/ensure_customer.d.ts.map +1 -1
  262. package/dist/src/ensure_customer.js +29 -4
  263. package/dist/src/ensure_customer.js.map +1 -1
  264. package/dist/src/hooks/webhook_handlers.d.ts.map +1 -1
  265. package/dist/src/hooks/webhook_handlers.js.map +1 -1
  266. package/dist/src/http.d.ts +37 -3
  267. package/dist/src/http.d.ts.map +1 -1
  268. package/dist/src/http.js +69 -5
  269. package/dist/src/http.js.map +1 -1
  270. package/dist/src/index.d.ts +54 -26
  271. package/dist/src/index.d.ts.map +1 -1
  272. package/dist/src/index.js +29 -12
  273. package/dist/src/index.js.map +1 -1
  274. package/dist/src/invoice/drivers/asaas.d.ts.map +1 -1
  275. package/dist/src/invoice/drivers/asaas.js.map +1 -1
  276. package/dist/src/invoice/drivers/enotas.d.ts.map +1 -1
  277. package/dist/src/invoice/drivers/enotas.js.map +1 -1
  278. package/dist/src/invoice/drivers/focus.d.ts.map +1 -1
  279. package/dist/src/invoice/drivers/focus.js.map +1 -1
  280. package/dist/src/invoice/drivers/plugnotas.d.ts.map +1 -1
  281. package/dist/src/invoice/drivers/plugnotas.js.map +1 -1
  282. package/dist/src/invoice/drivers/tecnospeed.d.ts.map +1 -1
  283. package/dist/src/invoice/drivers/tecnospeed.js.map +1 -1
  284. package/dist/src/invoice/emit_invoice.d.ts.map +1 -1
  285. package/dist/src/invoice/emit_invoice.js +31 -11
  286. package/dist/src/invoice/emit_invoice.js.map +1 -1
  287. package/dist/src/invoice/invoice_manager.d.ts.map +1 -1
  288. package/dist/src/money.d.ts +23 -5
  289. package/dist/src/money.d.ts.map +1 -1
  290. package/dist/src/money.js +72 -7
  291. package/dist/src/money.js.map +1 -1
  292. package/dist/src/payments_manager.d.ts +8 -1
  293. package/dist/src/payments_manager.d.ts.map +1 -1
  294. package/dist/src/payments_manager.js +168 -6
  295. package/dist/src/payments_manager.js.map +1 -1
  296. package/dist/src/services/main.d.ts +38 -0
  297. package/dist/src/services/main.d.ts.map +1 -1
  298. package/dist/src/services/main.js +130 -0
  299. package/dist/src/services/main.js.map +1 -1
  300. package/dist/src/telescope/index.d.ts +2 -0
  301. package/dist/src/telescope/index.d.ts.map +1 -1
  302. package/dist/src/telescope/index.js +1 -0
  303. package/dist/src/telescope/index.js.map +1 -1
  304. package/dist/src/telescope/payments_watcher.d.ts +10 -4
  305. package/dist/src/telescope/payments_watcher.d.ts.map +1 -1
  306. package/dist/src/telescope/payments_watcher.js +66 -14
  307. package/dist/src/telescope/payments_watcher.js.map +1 -1
  308. package/dist/src/telescope/register.d.ts +62 -0
  309. package/dist/src/telescope/register.d.ts.map +1 -0
  310. package/dist/src/telescope/register.js +48 -0
  311. package/dist/src/telescope/register.js.map +1 -0
  312. package/dist/src/testing/fake_payments.d.ts +62 -0
  313. package/dist/src/testing/fake_payments.d.ts.map +1 -0
  314. package/dist/src/testing/fake_payments.js +82 -0
  315. package/dist/src/testing/fake_payments.js.map +1 -0
  316. package/dist/src/testing/fake_payments_driver.d.ts +1 -1
  317. package/dist/src/testing/fake_payments_driver.d.ts.map +1 -1
  318. package/dist/src/testing/fake_payments_driver.js.map +1 -1
  319. package/dist/src/testing/in_memory_billing_store.d.ts +151 -2
  320. package/dist/src/testing/in_memory_billing_store.d.ts.map +1 -1
  321. package/dist/src/testing/in_memory_billing_store.js +517 -4
  322. package/dist/src/testing/in_memory_billing_store.js.map +1 -1
  323. package/dist/src/testing/index.d.ts +3 -2
  324. package/dist/src/testing/index.d.ts.map +1 -1
  325. package/dist/src/testing/index.js +1 -0
  326. package/dist/src/testing/index.js.map +1 -1
  327. package/dist/src/testing/mutable_clock.d.ts.map +1 -1
  328. package/dist/src/types.d.ts +161 -5
  329. package/dist/src/types.d.ts.map +1 -1
  330. package/dist/src/types.js +30 -1
  331. package/dist/src/types.js.map +1 -1
  332. package/dist/src/webhook_handlers.d.ts +96 -2
  333. package/dist/src/webhook_handlers.d.ts.map +1 -1
  334. package/dist/src/webhook_handlers.js +91 -10
  335. package/dist/src/webhook_handlers.js.map +1 -1
  336. package/dist/src/webhook_security.d.ts +94 -3
  337. package/dist/src/webhook_security.d.ts.map +1 -1
  338. package/dist/src/webhook_security.js +173 -9
  339. package/dist/src/webhook_security.js.map +1 -1
  340. package/dist/stubs/config/payments.stub +13 -0
  341. package/dist/stubs/config/payments_client.stub +42 -0
  342. package/dist/stubs/config/payments_dashboard.stub +38 -0
  343. package/dist/stubs/database/migrations/create_billing_tables.stub +35 -77
  344. package/dist/stubs/main.js.map +1 -1
  345. package/dist/stubs/make/webhook_handler/main.stub +29 -11
  346. package/package.json +67 -32
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagbank.js","sourceRoot":"","sources":["../../../src/drivers/pagbank.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,120 @@
1
+ import type { ChargeInput, CheckoutInput, CreateCustomerInput, CreateSubscriptionInput, PaymentsDriver, UpdateCustomerInput, UpdateSubscriptionInput, WebhookVerificationState } from '../driver.js';
2
+ import type { EmitInvoiceContext } from '../invoice/emit_invoice.js';
3
+ import type { CheckoutSession, Customer, Invoice, Money, Payment, Refund, Subscription, WebhookEvent } from '../types.js';
4
+ /**
5
+ * Config for {@link PayPalDriver}. Declared here rather than in `define_config.ts` so the
6
+ * driver module type-checks on its own; the factory re-exports it.
7
+ */
8
+ export interface PayPalDriverConfig {
9
+ /** REST app client id. Defaults to `env.get('PAYPAL_CLIENT_ID')`. */
10
+ clientId?: string;
11
+ /** REST app client secret. Defaults to `env.get('PAYPAL_CLIENT_SECRET')`. */
12
+ clientSecret?: string;
13
+ /**
14
+ * Currency for calls that don't name one (lowercase ISO 4217). **Required** — PayPal
15
+ * settles in whatever currency you hand it, so a default here would be a guess at the
16
+ * app's country, and a wrong guess charges instead of failing.
17
+ */
18
+ currency: string;
19
+ /** Use `api-m.sandbox.paypal.com`. Defaults to `NODE_ENV !== 'production'`. */
20
+ sandbox?: boolean;
21
+ /**
22
+ * The webhook id from the developer dashboard, sent to PayPal's
23
+ * `/v1/notifications/verify-webhook-signature`. Defaults to
24
+ * `env.get('PAYPAL_WEBHOOK_ID')`. Without it no webhook can be verified.
25
+ */
26
+ webhookId?: string;
27
+ }
28
+ /**
29
+ * PayPal driver — Orders v2 for money in, Payments v2 for refunds, Subscriptions v1 for
30
+ * recurring billing. Multi-currency, OAuth2 client credentials, plain REST (no SDK).
31
+ *
32
+ * Two things about PayPal shape this driver more than anything else:
33
+ *
34
+ * 1. It is a **wallet**. A payment normally needs the payer to approve it on paypal.com,
35
+ * so {@link createCheckout} is the real entry point; {@link charge} only works against
36
+ * a payment method the payer already vaulted, and refuses otherwise.
37
+ * 2. Webhook verification is an **API call**, not a local HMAC — see {@link parseWebhook}.
38
+ */
39
+ export declare class PayPalDriver implements PaymentsDriver {
40
+ #private;
41
+ readonly provider = "paypal";
42
+ /**
43
+ * `wallet` and `undefined`, and the split is which call is being routed.
44
+ *
45
+ * {@link PayPalDriver.createCheckout} hands the payer to PayPal, who picks the funding
46
+ * source on their own page — a card, a bank, a local method — so `undefined` ("let the
47
+ * customer choose") is the only promise that call can keep. {@link PayPalDriver.charge}
48
+ * is different: it charges a **vaulted PayPal account** (`payment_source.paypal.vault_id`)
49
+ * and nothing else, which is a stored-balance wallet by definition. `credit_card` is
50
+ * still absent — the driver never sends card data, so routing a card charge here would
51
+ * reach a driver that cannot make one.
52
+ */
53
+ readonly supportedMethods: readonly ['wallet', 'undefined'];
54
+ readonly capabilities: {
55
+ refunds: boolean;
56
+ invoices: boolean;
57
+ subscriptions: boolean;
58
+ };
59
+ constructor(ctx: EmitInvoiceContext, config: PayPalDriverConfig);
60
+ createCustomer(_input: CreateCustomerInput): Promise<Customer>;
61
+ findCustomer(_customerId: string): Promise<Customer | null>;
62
+ updateCustomer(_customerId: string, _input: UpdateCustomerInput): Promise<Customer>;
63
+ /**
64
+ * Charge a vaulted payment method server-to-server. PayPal calls this the "single shot"
65
+ * flow: an order with `payment_source.paypal.vault_id` is created and captured without
66
+ * the payer being present. Everything else needs approval on paypal.com, which no
67
+ * server-side call can stand in for.
68
+ */
69
+ charge(input: ChargeInput): Promise<Payment>;
70
+ /** Find a payment by its **capture** id — the id `charge()` and the webhooks return. */
71
+ findPayment(gatewayId: string): Promise<Payment | null>;
72
+ refund(paymentGatewayId: string, amount?: Money, options?: {
73
+ idempotencyKey?: string;
74
+ }): Promise<Refund>;
75
+ /**
76
+ * The real entry point for PayPal. Returns the URL to send the payer to; the money only
77
+ * moves once they approve it there and you capture the order (or, for `planId`, once
78
+ * they approve the subscription).
79
+ */
80
+ createCheckout(input: CheckoutInput): Promise<CheckoutSession>;
81
+ /**
82
+ * Create a subscription against an existing PayPal **plan** (`P-…`). It comes back
83
+ * `APPROVAL_PENDING`: the payer still has to approve it, and the link to send them to
84
+ * is in `subscription.payload.links` (rel `approve`). `createCheckout({ planId })`
85
+ * returns that URL directly and is usually what you want.
86
+ */
87
+ createSubscription(input: CreateSubscriptionInput): Promise<Subscription>;
88
+ cancelSubscription(subscriptionGatewayId: string, options?: {
89
+ atPeriodEnd?: boolean;
90
+ }): Promise<Subscription>;
91
+ /**
92
+ * Change the recurring price. PayPal applies it as a JSON Patch against the plan's
93
+ * REGULAR billing cycle — the sequence is read off the subscription first, because
94
+ * patching sequence 1 blindly rewrites the *trial* price on a plan that has one.
95
+ */
96
+ updateSubscription(subscriptionGatewayId: string, input: UpdateSubscriptionInput): Promise<Subscription>;
97
+ findSubscription(gatewayId: string): Promise<Subscription | null>;
98
+ listInvoices(_customerId: string): Promise<Invoice[]>;
99
+ /**
100
+ * Verify the webhook with PayPal and normalize it.
101
+ *
102
+ * PayPal has no local signature to check: verification is a POST to
103
+ * `/v1/notifications/verify-webhook-signature`, so **every webhook costs a round trip**
104
+ * (plus the OAuth call when the cached token has expired). That is PayPal's scheme —
105
+ * there is no offline HMAC to substitute for it.
106
+ *
107
+ * Without a `webhookId` there is nothing to verify against at all, so the event is
108
+ * parsed unverified — the same "unconfigured means unenforced" rule the other drivers
109
+ * follow, and what makes local development work without a dashboard webhook.
110
+ */
111
+ /**
112
+ * Whether a delivery to `POST /payments/webhook/:provider` can be authenticated.
113
+ *
114
+ * Without the webhook id `parseWebhook` normalizes the body without ever calling PayPal's
115
+ * verify-signature endpoint.
116
+ */
117
+ get webhookVerification(): WebhookVerificationState;
118
+ parseWebhook(rawBody: string, headers: Record<string, string | string[] | undefined>): Promise<WebhookEvent>;
119
+ }
120
+ //# sourceMappingURL=paypal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paypal.d.ts","sourceRoot":"","sources":["../../../src/drivers/paypal.ts"],"names":[],"mappings":"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"}