paddle-python-sdk 0.1.0__py3-none-any.whl

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 (517) hide show
  1. examples/__init__.py +0 -0
  2. examples/catalog_management.py +166 -0
  3. examples/event_polling.py +56 -0
  4. examples/get_products.py +46 -0
  5. examples/logger.py +31 -0
  6. paddle_billing/Client.py +201 -0
  7. paddle_billing/ConditionallyRemoveImportMeta.py +14 -0
  8. paddle_billing/Entities/Address.py +44 -0
  9. paddle_billing/Entities/Adjustment.py +45 -0
  10. paddle_billing/Entities/Adjustments/AdjustmentCustomerBalance.py +18 -0
  11. paddle_billing/Entities/Adjustments/AdjustmentItem.py +26 -0
  12. paddle_billing/Entities/Adjustments/__init__.py +2 -0
  13. paddle_billing/Entities/Business.py +38 -0
  14. paddle_billing/Entities/Collections/AddressCollection.py +18 -0
  15. paddle_billing/Entities/Collections/AdjustmentCollection.py +18 -0
  16. paddle_billing/Entities/Collections/BusinessCollection.py +18 -0
  17. paddle_billing/Entities/Collections/Collection.py +47 -0
  18. paddle_billing/Entities/Collections/CreditBalanceCollection.py +18 -0
  19. paddle_billing/Entities/Collections/CustomerCollection.py +18 -0
  20. paddle_billing/Entities/Collections/DiscountCollection.py +18 -0
  21. paddle_billing/Entities/Collections/EventCollection.py +18 -0
  22. paddle_billing/Entities/Collections/EventTypeCollection.py +18 -0
  23. paddle_billing/Entities/Collections/NotificationCollection.py +18 -0
  24. paddle_billing/Entities/Collections/NotificationLogCollection.py +18 -0
  25. paddle_billing/Entities/Collections/NotificationSettingCollection.py +18 -0
  26. paddle_billing/Entities/Collections/Paginator.py +29 -0
  27. paddle_billing/Entities/Collections/PriceCollection.py +18 -0
  28. paddle_billing/Entities/Collections/ProductCollection.py +18 -0
  29. paddle_billing/Entities/Collections/ReportCollection.py +18 -0
  30. paddle_billing/Entities/Collections/SubscriptionCollection.py +18 -0
  31. paddle_billing/Entities/Collections/SubscriptionPreviewCollection.py +18 -0
  32. paddle_billing/Entities/Collections/TransactionCollection.py +18 -0
  33. paddle_billing/Entities/Collections/TransactionPreviewCollection.py +18 -0
  34. paddle_billing/Entities/Collections/TransactionsDataCollection.py +18 -0
  35. paddle_billing/Entities/Collections/__init__.py +21 -0
  36. paddle_billing/Entities/CreditBalance.py +22 -0
  37. paddle_billing/Entities/Customer.py +36 -0
  38. paddle_billing/Entities/DateTime.py +43 -0
  39. paddle_billing/Entities/Discount.py +51 -0
  40. paddle_billing/Entities/Discounts/DiscountStatus.py +8 -0
  41. paddle_billing/Entities/Discounts/DiscountType.py +7 -0
  42. paddle_billing/Entities/Discounts/__init__.py +2 -0
  43. paddle_billing/Entities/Entity.py +12 -0
  44. paddle_billing/Entities/Event.py +51 -0
  45. paddle_billing/Entities/EventType.py +23 -0
  46. paddle_billing/Entities/Events/EventTypeName.py +52 -0
  47. paddle_billing/Entities/Events/__init__.py +1 -0
  48. paddle_billing/Entities/Notification.py +42 -0
  49. paddle_billing/Entities/NotificationLog.py +25 -0
  50. paddle_billing/Entities/NotificationSetting.py +34 -0
  51. paddle_billing/Entities/NotificationSettings/NotificationSettingType.py +6 -0
  52. paddle_billing/Entities/NotificationSettings/__init__.py +1 -0
  53. paddle_billing/Entities/Notifications/NotificationOrigin.py +6 -0
  54. paddle_billing/Entities/Notifications/NotificationPayout.py +24 -0
  55. paddle_billing/Entities/Notifications/NotificationPayoutStatus.py +6 -0
  56. paddle_billing/Entities/Notifications/NotificationStatus.py +8 -0
  57. paddle_billing/Entities/Notifications/__init__.py +4 -0
  58. paddle_billing/Entities/Price.py +68 -0
  59. paddle_billing/Entities/PricePreview.py +34 -0
  60. paddle_billing/Entities/PricingPreviews/PricePreviewDetails.py +15 -0
  61. paddle_billing/Entities/PricingPreviews/PricePreviewDiscounts.py +20 -0
  62. paddle_billing/Entities/PricingPreviews/PricePreviewItem.py +16 -0
  63. paddle_billing/Entities/PricingPreviews/PricePreviewLineItem.py +38 -0
  64. paddle_billing/Entities/PricingPreviews/PricePreviewTotalsFormatted.py +20 -0
  65. paddle_billing/Entities/PricingPreviews/PricePreviewUnitTotalsFormatted.py +20 -0
  66. paddle_billing/Entities/PricingPreviews/__init__.py +6 -0
  67. paddle_billing/Entities/Product.py +45 -0
  68. paddle_billing/Entities/Report.py +32 -0
  69. paddle_billing/Entities/ReportCSV.py +13 -0
  70. paddle_billing/Entities/Reports/ReportFilter.py +20 -0
  71. paddle_billing/Entities/Reports/ReportFilterName.py +17 -0
  72. paddle_billing/Entities/Reports/ReportFilterOperator.py +6 -0
  73. paddle_billing/Entities/Reports/ReportStatus.py +8 -0
  74. paddle_billing/Entities/Reports/ReportType.py +10 -0
  75. paddle_billing/Entities/Reports/__init__.py +5 -0
  76. paddle_billing/Entities/Shared/Action.py +10 -0
  77. paddle_billing/Entities/Shared/AddressPreview.py +18 -0
  78. paddle_billing/Entities/Shared/AdjustmentItemTotals.py +18 -0
  79. paddle_billing/Entities/Shared/AdjustmentProration.py +18 -0
  80. paddle_billing/Entities/Shared/AdjustmentStatus.py +8 -0
  81. paddle_billing/Entities/Shared/AdjustmentTimePeriod.py +17 -0
  82. paddle_billing/Entities/Shared/AdjustmentTotals.py +26 -0
  83. paddle_billing/Entities/Shared/AdjustmentType.py +8 -0
  84. paddle_billing/Entities/Shared/AvailablePaymentMethods.py +11 -0
  85. paddle_billing/Entities/Shared/BillingDetails.py +22 -0
  86. paddle_billing/Entities/Shared/BillingDetailsUpdate.py +22 -0
  87. paddle_billing/Entities/Shared/Card.py +24 -0
  88. paddle_billing/Entities/Shared/CatalogType.py +6 -0
  89. paddle_billing/Entities/Shared/ChargebackFee.py +18 -0
  90. paddle_billing/Entities/Shared/Checkout.py +12 -0
  91. paddle_billing/Entities/Shared/CollectionMode.py +6 -0
  92. paddle_billing/Entities/Shared/Contacts.py +16 -0
  93. paddle_billing/Entities/Shared/CountryCode.py +233 -0
  94. paddle_billing/Entities/Shared/CurrencyCode.py +34 -0
  95. paddle_billing/Entities/Shared/CurrencyCodeAdjustments.py +7 -0
  96. paddle_billing/Entities/Shared/CurrencyCodePayouts.py +17 -0
  97. paddle_billing/Entities/Shared/CustomData.py +10 -0
  98. paddle_billing/Entities/Shared/Data.py +9 -0
  99. paddle_billing/Entities/Shared/ErrorCode.py +21 -0
  100. paddle_billing/Entities/Shared/ImportMeta.py +16 -0
  101. paddle_billing/Entities/Shared/Interval.py +8 -0
  102. paddle_billing/Entities/Shared/Meta.py +7 -0
  103. paddle_billing/Entities/Shared/MetaPaginated.py +18 -0
  104. paddle_billing/Entities/Shared/MethodDetails.py +19 -0
  105. paddle_billing/Entities/Shared/Money.py +28 -0
  106. paddle_billing/Entities/Shared/Original.py +18 -0
  107. paddle_billing/Entities/Shared/Pagination.py +20 -0
  108. paddle_billing/Entities/Shared/PaymentAttemptStatus.py +13 -0
  109. paddle_billing/Entities/Shared/PaymentMethodType.py +14 -0
  110. paddle_billing/Entities/Shared/PayoutTotalsAdjustment.py +29 -0
  111. paddle_billing/Entities/Shared/PriceQuantity.py +16 -0
  112. paddle_billing/Entities/Shared/Status.py +6 -0
  113. paddle_billing/Entities/Shared/TaxCategory.py +13 -0
  114. paddle_billing/Entities/Shared/TaxMode.py +7 -0
  115. paddle_billing/Entities/Shared/TaxRatesUsed.py +18 -0
  116. paddle_billing/Entities/Shared/TimePeriod.py +18 -0
  117. paddle_billing/Entities/Shared/Totals.py +20 -0
  118. paddle_billing/Entities/Shared/TransactionDetailsPreview.py +22 -0
  119. paddle_billing/Entities/Shared/TransactionLineItemPreview.py +28 -0
  120. paddle_billing/Entities/Shared/TransactionOrigin.py +10 -0
  121. paddle_billing/Entities/Shared/TransactionPaymentAttempt.py +35 -0
  122. paddle_billing/Entities/Shared/TransactionPayoutTotals.py +36 -0
  123. paddle_billing/Entities/Shared/TransactionPayoutTotalsAdjusted.py +29 -0
  124. paddle_billing/Entities/Shared/TransactionStatus.py +11 -0
  125. paddle_billing/Entities/Shared/TransactionTotals.py +36 -0
  126. paddle_billing/Entities/Shared/TransactionTotalsAdjusted.py +28 -0
  127. paddle_billing/Entities/Shared/UnitPriceOverride.py +19 -0
  128. paddle_billing/Entities/Shared/UnitTotals.py +20 -0
  129. paddle_billing/Entities/Shared/__init__.py +56 -0
  130. paddle_billing/Entities/Subscription.py +86 -0
  131. paddle_billing/Entities/SubscriptionPreview.py +79 -0
  132. paddle_billing/Entities/Subscriptions/SubscriptionAdjustmentItem.py +24 -0
  133. paddle_billing/Entities/Subscriptions/SubscriptionAdjustmentPreview.py +22 -0
  134. paddle_billing/Entities/Subscriptions/SubscriptionCharge.py +18 -0
  135. paddle_billing/Entities/Subscriptions/SubscriptionCredit.py +18 -0
  136. paddle_billing/Entities/Subscriptions/SubscriptionDetails.py +34 -0
  137. paddle_billing/Entities/Subscriptions/SubscriptionDiscount.py +19 -0
  138. paddle_billing/Entities/Subscriptions/SubscriptionEffectiveFrom.py +6 -0
  139. paddle_billing/Entities/Subscriptions/SubscriptionItem.py +35 -0
  140. paddle_billing/Entities/Subscriptions/SubscriptionItemStatus.py +7 -0
  141. paddle_billing/Entities/Subscriptions/SubscriptionItems.py +20 -0
  142. paddle_billing/Entities/Subscriptions/SubscriptionItemsWithPrice.py +19 -0
  143. paddle_billing/Entities/Subscriptions/SubscriptionManagementUrls.py +16 -0
  144. paddle_billing/Entities/Subscriptions/SubscriptionNextTransaction.py +23 -0
  145. paddle_billing/Entities/Subscriptions/SubscriptionNonCatalogPrice.py +30 -0
  146. paddle_billing/Entities/Subscriptions/SubscriptionNonCatalogPriceWithProduct.py +32 -0
  147. paddle_billing/Entities/Subscriptions/SubscriptionNonCatalogProduct.py +26 -0
  148. paddle_billing/Entities/Subscriptions/SubscriptionOnPaymentFailure.py +6 -0
  149. paddle_billing/Entities/Subscriptions/SubscriptionPreviewSubscriptionUpdateSummary.py +22 -0
  150. paddle_billing/Entities/Subscriptions/SubscriptionPrice.py +28 -0
  151. paddle_billing/Entities/Subscriptions/SubscriptionProration.py +18 -0
  152. paddle_billing/Entities/Subscriptions/SubscriptionProrationBillingMode.py +9 -0
  153. paddle_billing/Entities/Subscriptions/SubscriptionResult.py +22 -0
  154. paddle_billing/Entities/Subscriptions/SubscriptionResultAction.py +6 -0
  155. paddle_billing/Entities/Subscriptions/SubscriptionResumeEffectiveFrom.py +5 -0
  156. paddle_billing/Entities/Subscriptions/SubscriptionScheduledChange.py +21 -0
  157. paddle_billing/Entities/Subscriptions/SubscriptionScheduledChangeAction.py +7 -0
  158. paddle_billing/Entities/Subscriptions/SubscriptionStatus.py +10 -0
  159. paddle_billing/Entities/Subscriptions/SubscriptionTimePeriod.py +17 -0
  160. paddle_billing/Entities/Subscriptions/SubscriptionTransactionItem.py +23 -0
  161. paddle_billing/Entities/Subscriptions/SubscriptionTransactionLineItem.py +33 -0
  162. paddle_billing/Entities/Subscriptions/SubscriptionUpdateItem.py +16 -0
  163. paddle_billing/Entities/Subscriptions/__init__.py +31 -0
  164. paddle_billing/Entities/Transaction.py +98 -0
  165. paddle_billing/Entities/TransactionData.py +15 -0
  166. paddle_billing/Entities/TransactionPreview.py +40 -0
  167. paddle_billing/Entities/Transactions/TransactionAdjustmentsTotals.py +30 -0
  168. paddle_billing/Entities/Transactions/TransactionBreakdown.py +18 -0
  169. paddle_billing/Entities/Transactions/TransactionCardType.py +14 -0
  170. paddle_billing/Entities/Transactions/TransactionCreateItem.py +16 -0
  171. paddle_billing/Entities/Transactions/TransactionCreateItemWithPrice.py +11 -0
  172. paddle_billing/Entities/Transactions/TransactionDetails.py +32 -0
  173. paddle_billing/Entities/Transactions/TransactionItem.py +24 -0
  174. paddle_billing/Entities/Transactions/TransactionItemPreviewWithNonCatalogPrice.py +21 -0
  175. paddle_billing/Entities/Transactions/TransactionItemPreviewWithPrice.py +24 -0
  176. paddle_billing/Entities/Transactions/TransactionItemPreviewWithPriceId.py +18 -0
  177. paddle_billing/Entities/Transactions/TransactionLineItem.py +35 -0
  178. paddle_billing/Entities/Transactions/TransactionNonCatalogPrice.py +39 -0
  179. paddle_billing/Entities/Transactions/TransactionNonCatalogPriceWithProduct.py +41 -0
  180. paddle_billing/Entities/Transactions/TransactionNonCatalogProduct.py +25 -0
  181. paddle_billing/Entities/Transactions/TransactionProration.py +18 -0
  182. paddle_billing/Entities/Transactions/TransactionTimePeriod.py +17 -0
  183. paddle_billing/Entities/Transactions/TransactionUpdateTransactionItem.py +8 -0
  184. paddle_billing/Entities/Transactions/__init__.py +20 -0
  185. paddle_billing/Entities/__init__.py +0 -0
  186. paddle_billing/EnumStringify.py +2 -0
  187. paddle_billing/Environment.py +14 -0
  188. paddle_billing/Exceptions/ApiError.py +28 -0
  189. paddle_billing/Exceptions/ApiErrors/AddressApiError.py +5 -0
  190. paddle_billing/Exceptions/ApiErrors/AdjustmentApiError.py +5 -0
  191. paddle_billing/Exceptions/ApiErrors/BusinessApiError.py +5 -0
  192. paddle_billing/Exceptions/ApiErrors/CustomerApiError.py +5 -0
  193. paddle_billing/Exceptions/ApiErrors/DiscountApiError.py +5 -0
  194. paddle_billing/Exceptions/ApiErrors/PriceApiError.py +5 -0
  195. paddle_billing/Exceptions/ApiErrors/ProductApiError.py +5 -0
  196. paddle_billing/Exceptions/ApiErrors/SubscriptionApiError.py +5 -0
  197. paddle_billing/Exceptions/ApiErrors/TransactionApiError.py +5 -0
  198. paddle_billing/Exceptions/ApiErrors/__init__.py +0 -0
  199. paddle_billing/Exceptions/FieldError.py +8 -0
  200. paddle_billing/Exceptions/SdkException.py +2 -0
  201. paddle_billing/Exceptions/SdkExceptions/InvalidArgumentException.py +8 -0
  202. paddle_billing/Exceptions/SdkExceptions/MalformedResponse.py +7 -0
  203. paddle_billing/Exceptions/SdkExceptions/__init__.py +0 -0
  204. paddle_billing/Exceptions/__init__.py +0 -0
  205. paddle_billing/FiltersNone.py +8 -0
  206. paddle_billing/FiltersUndefined.py +11 -0
  207. paddle_billing/HasParameters.py +11 -0
  208. paddle_billing/Logger/Formatter.py +18 -0
  209. paddle_billing/Logger/NullHandler.py +6 -0
  210. paddle_billing/Logger/__init__.py +30 -0
  211. paddle_billing/Notifications/Entities/Address.py +44 -0
  212. paddle_billing/Notifications/Entities/Adjustment.py +45 -0
  213. paddle_billing/Notifications/Entities/Adjustments/AdjustmentItem.py +26 -0
  214. paddle_billing/Notifications/Entities/Adjustments/__init__.py +1 -0
  215. paddle_billing/Notifications/Entities/Business.py +39 -0
  216. paddle_billing/Notifications/Entities/Businesses/BusinessesContacts.py +16 -0
  217. paddle_billing/Notifications/Entities/Businesses/__init__.py +1 -0
  218. paddle_billing/Notifications/Entities/Customer.py +36 -0
  219. paddle_billing/Notifications/Entities/DateTime.py +43 -0
  220. paddle_billing/Notifications/Entities/Discount.py +51 -0
  221. paddle_billing/Notifications/Entities/Discounts/DiscountStatus.py +8 -0
  222. paddle_billing/Notifications/Entities/Discounts/DiscountType.py +7 -0
  223. paddle_billing/Notifications/Entities/Discounts/__init__.py +2 -0
  224. paddle_billing/Notifications/Entities/Entity.py +12 -0
  225. paddle_billing/Notifications/Entities/Payout.py +24 -0
  226. paddle_billing/Notifications/Entities/Payouts/PayoutStatus.py +6 -0
  227. paddle_billing/Notifications/Entities/Payouts/__init__.py +1 -0
  228. paddle_billing/Notifications/Entities/Price.py +66 -0
  229. paddle_billing/Notifications/Entities/Product.py +45 -0
  230. paddle_billing/Notifications/Entities/Report.py +32 -0
  231. paddle_billing/Notifications/Entities/Reports/ReportFilter.py +20 -0
  232. paddle_billing/Notifications/Entities/Reports/ReportFilterName.py +17 -0
  233. paddle_billing/Notifications/Entities/Reports/ReportFilterOperator.py +6 -0
  234. paddle_billing/Notifications/Entities/Reports/ReportStatus.py +8 -0
  235. paddle_billing/Notifications/Entities/Reports/ReportType.py +10 -0
  236. paddle_billing/Notifications/Entities/Reports/__init__.py +5 -0
  237. paddle_billing/Notifications/Entities/Shared/Action.py +10 -0
  238. paddle_billing/Notifications/Entities/Shared/AddressPreview.py +18 -0
  239. paddle_billing/Notifications/Entities/Shared/AdjustmentItemTotals.py +18 -0
  240. paddle_billing/Notifications/Entities/Shared/AdjustmentProration.py +18 -0
  241. paddle_billing/Notifications/Entities/Shared/AdjustmentStatus.py +8 -0
  242. paddle_billing/Notifications/Entities/Shared/AdjustmentTimePeriod.py +17 -0
  243. paddle_billing/Notifications/Entities/Shared/AdjustmentTotals.py +26 -0
  244. paddle_billing/Notifications/Entities/Shared/AdjustmentType.py +8 -0
  245. paddle_billing/Notifications/Entities/Shared/AvailablePaymentMethods.py +11 -0
  246. paddle_billing/Notifications/Entities/Shared/BillingDetails.py +22 -0
  247. paddle_billing/Notifications/Entities/Shared/Card.py +24 -0
  248. paddle_billing/Notifications/Entities/Shared/CatalogType.py +6 -0
  249. paddle_billing/Notifications/Entities/Shared/ChargebackFee.py +18 -0
  250. paddle_billing/Notifications/Entities/Shared/Checkout.py +12 -0
  251. paddle_billing/Notifications/Entities/Shared/CollectionMode.py +6 -0
  252. paddle_billing/Notifications/Entities/Shared/CountryCode.py +233 -0
  253. paddle_billing/Notifications/Entities/Shared/CurrencyCode.py +34 -0
  254. paddle_billing/Notifications/Entities/Shared/CurrencyCodeAdjustments.py +7 -0
  255. paddle_billing/Notifications/Entities/Shared/CurrencyCodePayouts.py +17 -0
  256. paddle_billing/Notifications/Entities/Shared/CustomData.py +10 -0
  257. paddle_billing/Notifications/Entities/Shared/Data.py +9 -0
  258. paddle_billing/Notifications/Entities/Shared/ErrorCode.py +21 -0
  259. paddle_billing/Notifications/Entities/Shared/ImportMeta.py +16 -0
  260. paddle_billing/Notifications/Entities/Shared/Interval.py +8 -0
  261. paddle_billing/Notifications/Entities/Shared/MethodDetails.py +19 -0
  262. paddle_billing/Notifications/Entities/Shared/Money.py +28 -0
  263. paddle_billing/Notifications/Entities/Shared/Original.py +18 -0
  264. paddle_billing/Notifications/Entities/Shared/PaymentAttemptStatus.py +13 -0
  265. paddle_billing/Notifications/Entities/Shared/PaymentMethodType.py +15 -0
  266. paddle_billing/Notifications/Entities/Shared/PayoutTotalsAdjustment.py +29 -0
  267. paddle_billing/Notifications/Entities/Shared/PriceQuantity.py +16 -0
  268. paddle_billing/Notifications/Entities/Shared/Status.py +6 -0
  269. paddle_billing/Notifications/Entities/Shared/TaxCategory.py +13 -0
  270. paddle_billing/Notifications/Entities/Shared/TaxMode.py +7 -0
  271. paddle_billing/Notifications/Entities/Shared/TaxRatesUsed.py +18 -0
  272. paddle_billing/Notifications/Entities/Shared/TimePeriod.py +18 -0
  273. paddle_billing/Notifications/Entities/Shared/Totals.py +20 -0
  274. paddle_billing/Notifications/Entities/Shared/TransactionOrigin.py +10 -0
  275. paddle_billing/Notifications/Entities/Shared/TransactionPaymentAttempt.py +35 -0
  276. paddle_billing/Notifications/Entities/Shared/TransactionPayoutTotals.py +36 -0
  277. paddle_billing/Notifications/Entities/Shared/TransactionPayoutTotalsAdjusted.py +29 -0
  278. paddle_billing/Notifications/Entities/Shared/TransactionStatus.py +11 -0
  279. paddle_billing/Notifications/Entities/Shared/TransactionTotals.py +36 -0
  280. paddle_billing/Notifications/Entities/Shared/TransactionTotalsAdjusted.py +28 -0
  281. paddle_billing/Notifications/Entities/Shared/UnitPriceOverride.py +19 -0
  282. paddle_billing/Notifications/Entities/Shared/UnitTotals.py +20 -0
  283. paddle_billing/Notifications/Entities/Shared/__init__.py +46 -0
  284. paddle_billing/Notifications/Entities/Subscription.py +76 -0
  285. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionAdjustmentItem.py +24 -0
  286. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionCharge.py +18 -0
  287. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionCredit.py +18 -0
  288. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionDiscount.py +19 -0
  289. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionEffectiveFrom.py +6 -0
  290. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionItem.py +35 -0
  291. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionItemStatus.py +7 -0
  292. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionOnPaymentFailure.py +6 -0
  293. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionPrice.py +28 -0
  294. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionScheduledChange.py +21 -0
  295. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionScheduledChangeAction.py +7 -0
  296. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionStatus.py +10 -0
  297. paddle_billing/Notifications/Entities/Subscriptions/SubscriptionTimePeriod.py +17 -0
  298. paddle_billing/Notifications/Entities/Subscriptions/__init__.py +13 -0
  299. paddle_billing/Notifications/Entities/Transaction.py +75 -0
  300. paddle_billing/Notifications/Entities/Transactions/TransactionAdjustmentsTotals.py +30 -0
  301. paddle_billing/Notifications/Entities/Transactions/TransactionBreakdown.py +18 -0
  302. paddle_billing/Notifications/Entities/Transactions/TransactionCardType.py +14 -0
  303. paddle_billing/Notifications/Entities/Transactions/TransactionDetails.py +32 -0
  304. paddle_billing/Notifications/Entities/Transactions/TransactionItem.py +24 -0
  305. paddle_billing/Notifications/Entities/Transactions/TransactionLineItem.py +35 -0
  306. paddle_billing/Notifications/Entities/Transactions/TransactionProration.py +18 -0
  307. paddle_billing/Notifications/Entities/Transactions/TransactionTimePeriod.py +17 -0
  308. paddle_billing/Notifications/Entities/Transactions/__init__.py +11 -0
  309. paddle_billing/Notifications/Entities/__init__.py +0 -0
  310. paddle_billing/Notifications/Events/AddressCreated.py +17 -0
  311. paddle_billing/Notifications/Events/AddressUpdated.py +17 -0
  312. paddle_billing/Notifications/Events/AdjustmentCreated.py +17 -0
  313. paddle_billing/Notifications/Events/AdjustmentUpdated.py +17 -0
  314. paddle_billing/Notifications/Events/BusinessCreated.py +17 -0
  315. paddle_billing/Notifications/Events/BusinessUpdated.py +17 -0
  316. paddle_billing/Notifications/Events/CustomerCreated.py +17 -0
  317. paddle_billing/Notifications/Events/CustomerUpdated.py +17 -0
  318. paddle_billing/Notifications/Events/DiscountCreated.py +17 -0
  319. paddle_billing/Notifications/Events/DiscountImported.py +17 -0
  320. paddle_billing/Notifications/Events/DiscountUpdated.py +17 -0
  321. paddle_billing/Notifications/Events/PayoutCreated.py +17 -0
  322. paddle_billing/Notifications/Events/PayoutPaid.py +17 -0
  323. paddle_billing/Notifications/Events/PriceCreated.py +17 -0
  324. paddle_billing/Notifications/Events/PriceUpdated.py +17 -0
  325. paddle_billing/Notifications/Events/ProductCreated.py +17 -0
  326. paddle_billing/Notifications/Events/ProductUpdated.py +17 -0
  327. paddle_billing/Notifications/Events/ReportCreated.py +17 -0
  328. paddle_billing/Notifications/Events/ReportUpdated.py +17 -0
  329. paddle_billing/Notifications/Events/SubscriptionActivated.py +17 -0
  330. paddle_billing/Notifications/Events/SubscriptionCanceled.py +17 -0
  331. paddle_billing/Notifications/Events/SubscriptionCreated.py +17 -0
  332. paddle_billing/Notifications/Events/SubscriptionImported.py +17 -0
  333. paddle_billing/Notifications/Events/SubscriptionPastDue.py +17 -0
  334. paddle_billing/Notifications/Events/SubscriptionPaused.py +17 -0
  335. paddle_billing/Notifications/Events/SubscriptionResumed.py +17 -0
  336. paddle_billing/Notifications/Events/SubscriptionTrialing.py +17 -0
  337. paddle_billing/Notifications/Events/SubscriptionUpdated.py +17 -0
  338. paddle_billing/Notifications/Events/TransactionBilled.py +17 -0
  339. paddle_billing/Notifications/Events/TransactionCanceled.py +17 -0
  340. paddle_billing/Notifications/Events/TransactionCompleted.py +16 -0
  341. paddle_billing/Notifications/Events/TransactionCreated.py +17 -0
  342. paddle_billing/Notifications/Events/TransactionPaid.py +17 -0
  343. paddle_billing/Notifications/Events/TransactionPastDue.py +17 -0
  344. paddle_billing/Notifications/Events/TransactionPaymentFailed.py +17 -0
  345. paddle_billing/Notifications/Events/TransactionReady.py +17 -0
  346. paddle_billing/Notifications/Events/TransactionUpdated.py +17 -0
  347. paddle_billing/Notifications/Events/__init__.py +0 -0
  348. paddle_billing/Notifications/PaddleSignature.py +128 -0
  349. paddle_billing/Notifications/Secret.py +8 -0
  350. paddle_billing/Notifications/Verifier.py +55 -0
  351. paddle_billing/Notifications/__init__.py +3 -0
  352. paddle_billing/Options.py +10 -0
  353. paddle_billing/PaddleStrEnum.py +44 -0
  354. paddle_billing/RecursivelyRemoveKey.py +14 -0
  355. paddle_billing/Resources/Addresses/AddressesClient.py +58 -0
  356. paddle_billing/Resources/Addresses/Operations/CreateAddress.py +20 -0
  357. paddle_billing/Resources/Addresses/Operations/ListAddresses.py +42 -0
  358. paddle_billing/Resources/Addresses/Operations/UpdateAddress.py +21 -0
  359. paddle_billing/Resources/Addresses/Operations/__init__.py +3 -0
  360. paddle_billing/Resources/Addresses/__init__.py +0 -0
  361. paddle_billing/Resources/Adjustments/AdjustmentsClient.py +36 -0
  362. paddle_billing/Resources/Adjustments/Operations/Create/AdjustmentItem.py +11 -0
  363. paddle_billing/Resources/Adjustments/Operations/Create/__init__.py +0 -0
  364. paddle_billing/Resources/Adjustments/Operations/CreateAdjustment.py +28 -0
  365. paddle_billing/Resources/Adjustments/Operations/ListAdjustments.py +60 -0
  366. paddle_billing/Resources/Adjustments/Operations/__init__.py +3 -0
  367. paddle_billing/Resources/Adjustments/__init__.py +0 -0
  368. paddle_billing/Resources/Businesses/BusinessesClient.py +58 -0
  369. paddle_billing/Resources/Businesses/Operations/CreateBusiness.py +17 -0
  370. paddle_billing/Resources/Businesses/Operations/ListBusinesses.py +45 -0
  371. paddle_billing/Resources/Businesses/Operations/UpdateBusiness.py +18 -0
  372. paddle_billing/Resources/Businesses/Operations/__init__.py +3 -0
  373. paddle_billing/Resources/Businesses/__init__.py +0 -0
  374. paddle_billing/Resources/Customers/CustomersClient.py +65 -0
  375. paddle_billing/Resources/Customers/Operations/CreateCustomer.py +16 -0
  376. paddle_billing/Resources/Customers/Operations/ListCreditBalances.py +28 -0
  377. paddle_billing/Resources/Customers/Operations/ListCustomers.py +50 -0
  378. paddle_billing/Resources/Customers/Operations/UpdateCustomer.py +17 -0
  379. paddle_billing/Resources/Customers/Operations/__init__.py +4 -0
  380. paddle_billing/Resources/Customers/__init__.py +0 -0
  381. paddle_billing/Resources/Discounts/DiscountsClient.py +55 -0
  382. paddle_billing/Resources/Discounts/Operations/CreateDiscount.py +24 -0
  383. paddle_billing/Resources/Discounts/Operations/ListDiscounts.py +46 -0
  384. paddle_billing/Resources/Discounts/Operations/UpdateDiscount.py +25 -0
  385. paddle_billing/Resources/Discounts/Operations/__init__.py +3 -0
  386. paddle_billing/Resources/Discounts/__init__.py +0 -0
  387. paddle_billing/Resources/EventTypes/EventTypesClient.py +22 -0
  388. paddle_billing/Resources/EventTypes/__init__.py +0 -0
  389. paddle_billing/Resources/Events/EventsClient.py +26 -0
  390. paddle_billing/Resources/Events/Operations/ListEvents.py +12 -0
  391. paddle_billing/Resources/Events/Operations/__init__.py +1 -0
  392. paddle_billing/Resources/Events/__init__.py +0 -0
  393. paddle_billing/Resources/NotificationLogs/NotificationLogsClient.py +26 -0
  394. paddle_billing/Resources/NotificationLogs/Operations/ListNotificationLogs.py +11 -0
  395. paddle_billing/Resources/NotificationLogs/Operations/__init__.py +1 -0
  396. paddle_billing/Resources/NotificationLogs/__init__.py +0 -0
  397. paddle_billing/Resources/NotificationSettings/NotificationSettingsClient.py +54 -0
  398. paddle_billing/Resources/NotificationSettings/Operations/CreateNotificationSetting.py +21 -0
  399. paddle_billing/Resources/NotificationSettings/Operations/UpdateNotificationSetting.py +20 -0
  400. paddle_billing/Resources/NotificationSettings/Operations/__init__.py +2 -0
  401. paddle_billing/Resources/NotificationSettings/__init__.py +0 -0
  402. paddle_billing/Resources/Notifications/NotificationsClient.py +44 -0
  403. paddle_billing/Resources/Notifications/Operations/ListNotifications.py +58 -0
  404. paddle_billing/Resources/Notifications/Operations/__init__.py +1 -0
  405. paddle_billing/Resources/Notifications/__init__.py +0 -0
  406. paddle_billing/Resources/Prices/Operations/CreatePrice.py +23 -0
  407. paddle_billing/Resources/Prices/Operations/List/Includes.py +5 -0
  408. paddle_billing/Resources/Prices/Operations/List/__init__.py +0 -0
  409. paddle_billing/Resources/Prices/Operations/ListPrices.py +62 -0
  410. paddle_billing/Resources/Prices/Operations/UpdatePrice.py +23 -0
  411. paddle_billing/Resources/Prices/Operations/__init__.py +4 -0
  412. paddle_billing/Resources/Prices/PricesClient.py +65 -0
  413. paddle_billing/Resources/Prices/__init__.py +0 -0
  414. paddle_billing/Resources/PricingPreviews/Operations/PreviewPrice.py +20 -0
  415. paddle_billing/Resources/PricingPreviews/Operations/__init__.py +1 -0
  416. paddle_billing/Resources/PricingPreviews/PricingPreviewsClient.py +20 -0
  417. paddle_billing/Resources/PricingPreviews/__init__.py +0 -0
  418. paddle_billing/Resources/Products/Operations/CreateProduct.py +18 -0
  419. paddle_billing/Resources/Products/Operations/List/Includes.py +5 -0
  420. paddle_billing/Resources/Products/Operations/List/__init__.py +0 -0
  421. paddle_billing/Resources/Products/Operations/ListProducts.py +59 -0
  422. paddle_billing/Resources/Products/Operations/UpdateProduct.py +19 -0
  423. paddle_billing/Resources/Products/Operations/__init__.py +4 -0
  424. paddle_billing/Resources/Products/ProductsClient.py +70 -0
  425. paddle_billing/Resources/Products/__init__.py +0 -0
  426. paddle_billing/Resources/Reports/Operations/CreateReport.py +27 -0
  427. paddle_billing/Resources/Reports/Operations/ListReports.py +35 -0
  428. paddle_billing/Resources/Reports/Operations/__init__.py +2 -0
  429. paddle_billing/Resources/Reports/ReportsClient.py +51 -0
  430. paddle_billing/Resources/Reports/__init__.py +0 -0
  431. paddle_billing/Resources/Shared/Operations/List/Comparator.py +8 -0
  432. paddle_billing/Resources/Shared/Operations/List/DateComparison.py +31 -0
  433. paddle_billing/Resources/Shared/Operations/List/OrderBy.py +21 -0
  434. paddle_billing/Resources/Shared/Operations/List/Pager.py +24 -0
  435. paddle_billing/Resources/Shared/Operations/List/__init__.py +0 -0
  436. paddle_billing/Resources/Shared/Operations/__init__.py +4 -0
  437. paddle_billing/Resources/Shared/__init__.py +0 -0
  438. paddle_billing/Resources/Subscriptions/Operations/CancelSubscription.py +12 -0
  439. paddle_billing/Resources/Subscriptions/Operations/CreateOneTimeCharge.py +22 -0
  440. paddle_billing/Resources/Subscriptions/Operations/Get/Includes.py +6 -0
  441. paddle_billing/Resources/Subscriptions/Operations/Get/__init__.py +0 -0
  442. paddle_billing/Resources/Subscriptions/Operations/ListSubscriptions.py +59 -0
  443. paddle_billing/Resources/Subscriptions/Operations/PauseSubscription.py +19 -0
  444. paddle_billing/Resources/Subscriptions/Operations/PreviewOneTimeCharge.py +22 -0
  445. paddle_billing/Resources/Subscriptions/Operations/PreviewUpdateSubscription.py +37 -0
  446. paddle_billing/Resources/Subscriptions/Operations/ResumeSubscription.py +17 -0
  447. paddle_billing/Resources/Subscriptions/Operations/Update/SubscriptionDiscount.py +9 -0
  448. paddle_billing/Resources/Subscriptions/Operations/Update/__init__.py +0 -0
  449. paddle_billing/Resources/Subscriptions/Operations/UpdateSubscription.py +37 -0
  450. paddle_billing/Resources/Subscriptions/Operations/__init__.py +10 -0
  451. paddle_billing/Resources/Subscriptions/SubscriptionsClient.py +121 -0
  452. paddle_billing/Resources/Subscriptions/__init__.py +0 -0
  453. paddle_billing/Resources/Transactions/Operations/CreateTransaction.py +25 -0
  454. paddle_billing/Resources/Transactions/Operations/List/Includes.py +11 -0
  455. paddle_billing/Resources/Transactions/Operations/List/Origin.py +10 -0
  456. paddle_billing/Resources/Transactions/Operations/List/__init__.py +0 -0
  457. paddle_billing/Resources/Transactions/Operations/ListTransactions.py +86 -0
  458. paddle_billing/Resources/Transactions/Operations/PreviewTransaction.py +24 -0
  459. paddle_billing/Resources/Transactions/Operations/UpdateTransaction.py +25 -0
  460. paddle_billing/Resources/Transactions/Operations/__init__.py +6 -0
  461. paddle_billing/Resources/Transactions/TransactionsClient.py +90 -0
  462. paddle_billing/Resources/Transactions/__init__.py +0 -0
  463. paddle_billing/Resources/__init__.py +0 -0
  464. paddle_billing/ResponseParser.py +65 -0
  465. paddle_billing/Undefined.py +2 -0
  466. paddle_billing/__init__.py +4 -0
  467. paddle_python_sdk-0.1.0.dist-info/LICENSE +190 -0
  468. paddle_python_sdk-0.1.0.dist-info/METADATA +184 -0
  469. paddle_python_sdk-0.1.0.dist-info/RECORD +517 -0
  470. paddle_python_sdk-0.1.0.dist-info/WHEEL +5 -0
  471. paddle_python_sdk-0.1.0.dist-info/top_level.txt +3 -0
  472. tests/Functional/Resources/Addresses/__init__.py +0 -0
  473. tests/Functional/Resources/Addresses/test_AddressesClient.py +274 -0
  474. tests/Functional/Resources/Adjustments/__init__.py +0 -0
  475. tests/Functional/Resources/Adjustments/test_AdjustmentsClient.py +188 -0
  476. tests/Functional/Resources/Businesses/__init__.py +0 -0
  477. tests/Functional/Resources/Businesses/test_BusinessesClient.py +279 -0
  478. tests/Functional/Resources/Customers/__init__.py +0 -0
  479. tests/Functional/Resources/Customers/test_CustomersClient.py +291 -0
  480. tests/Functional/Resources/Discounts/__init__.py +0 -0
  481. tests/Functional/Resources/Discounts/test_DiscountsClient.py +280 -0
  482. tests/Functional/Resources/EventTypes/__init__.py +0 -0
  483. tests/Functional/Resources/EventTypes/test_EventTypesClient.py +43 -0
  484. tests/Functional/Resources/Events/__init__.py +0 -0
  485. tests/Functional/Resources/Events/test_EventsClient.py +64 -0
  486. tests/Functional/Resources/NotificationLogs/__init__.py +0 -0
  487. tests/Functional/Resources/NotificationLogs/test_NotificationLogsClient.py +68 -0
  488. tests/Functional/Resources/NotificationSettings/__init__.py +0 -0
  489. tests/Functional/Resources/NotificationSettings/test_NotificationSettingsClient.py +287 -0
  490. tests/Functional/Resources/Notifications/__init__.py +0 -0
  491. tests/Functional/Resources/Notifications/test_NotificationsClient.py +202 -0
  492. tests/Functional/Resources/Prices/__init__.py +0 -0
  493. tests/Functional/Resources/Prices/test_PricesClient.py +307 -0
  494. tests/Functional/Resources/PricingPreviews/__init__.py +0 -0
  495. tests/Functional/Resources/PricingPreviews/test_PricingPreviewsClient.py +92 -0
  496. tests/Functional/Resources/Products/__init__.py +0 -0
  497. tests/Functional/Resources/Products/test_ProductsClient.py +271 -0
  498. tests/Functional/Resources/Reports/__init__.py +0 -0
  499. tests/Functional/Resources/Reports/test_ReportsClient.py +197 -0
  500. tests/Functional/Resources/Subscriptions/__init__.py +0 -0
  501. tests/Functional/Resources/Subscriptions/test_SubscriptionsClient.py +758 -0
  502. tests/Functional/Resources/Transactions/__init__.py +0 -0
  503. tests/Functional/Resources/Transactions/test_TransactionsClient.py +585 -0
  504. tests/Functional/Resources/__init__.py +0 -0
  505. tests/Functional/__init__.py +0 -0
  506. tests/Unit/Logger/__init__.py +0 -0
  507. tests/Unit/Logger/test_Logger.py +10 -0
  508. tests/Unit/Notification/__init__.py +0 -0
  509. tests/Unit/Notification/test_Verifier.py +63 -0
  510. tests/Unit/PaddleStrEnum/__init__.py +0 -0
  511. tests/Unit/PaddleStrEnum/test_PaddleStrEnum.py +52 -0
  512. tests/Unit/__init__.py +0 -0
  513. tests/Utils/FakeResponse.py +6 -0
  514. tests/Utils/ReadsFixture.py +33 -0
  515. tests/Utils/TestClient.py +48 -0
  516. tests/Utils/__init__.py +1 -0
  517. tests/__init__.py +0 -0
@@ -0,0 +1,12 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+
5
+ @dataclass
6
+ class Checkout:
7
+ url: str | None
8
+
9
+
10
+ @staticmethod
11
+ def from_dict(data: dict) -> Checkout:
12
+ return Checkout(url=data.get('url'))
@@ -0,0 +1,6 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class CollectionMode(PaddleStrEnum):
5
+ Automatic = 'automatic'
6
+ Manual = 'manual'
@@ -0,0 +1,233 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class CountryCode(PaddleStrEnum):
5
+ AD = 'AD'
6
+ AE = 'AE'
7
+ AG = 'AG'
8
+ AI = 'AI'
9
+ AL = 'AL'
10
+ AM = 'AM'
11
+ AO = 'AO'
12
+ AR = 'AR'
13
+ AS = 'AS'
14
+ AT = 'AT'
15
+ AU = 'AU'
16
+ AW = 'AW'
17
+ AX = 'AX'
18
+ AZ = 'AZ'
19
+ BA = 'BA'
20
+ BB = 'BB'
21
+ BD = 'BD'
22
+ BE = 'BE'
23
+ BF = 'BF'
24
+ BG = 'BG'
25
+ BH = 'BH'
26
+ BI = 'BI'
27
+ BJ = 'BJ'
28
+ BL = 'BL'
29
+ BM = 'BM'
30
+ BN = 'BN'
31
+ BO = 'BO'
32
+ BQ = 'BQ'
33
+ BR = 'BR'
34
+ BS = 'BS'
35
+ BT = 'BT'
36
+ BV = 'BV'
37
+ BW = 'BW'
38
+ BZ = 'BZ'
39
+ CA = 'CA'
40
+ CC = 'CC'
41
+ CG = 'CG'
42
+ CH = 'CH'
43
+ CI = 'CI'
44
+ CK = 'CK'
45
+ CL = 'CL'
46
+ CM = 'CM'
47
+ CN = 'CN'
48
+ CO = 'CO'
49
+ CR = 'CR'
50
+ CV = 'CV'
51
+ CW = 'CW'
52
+ CX = 'CX'
53
+ CY = 'CY'
54
+ CZ = 'CZ'
55
+ DE = 'DE'
56
+ DJ = 'DJ'
57
+ DK = 'DK'
58
+ DM = 'DM'
59
+ DO = 'DO'
60
+ DZ = 'DZ'
61
+ EC = 'EC'
62
+ EE = 'EE'
63
+ EG = 'EG'
64
+ EH = 'EH'
65
+ ER = 'ER'
66
+ ES = 'ES'
67
+ ET = 'ET'
68
+ FI = 'FI'
69
+ FJ = 'FJ'
70
+ FK = 'FK'
71
+ FM = 'FM'
72
+ FO = 'FO'
73
+ FR = 'FR'
74
+ GA = 'GA'
75
+ GB = 'GB'
76
+ GD = 'GD'
77
+ GE = 'GE'
78
+ GF = 'GF'
79
+ GG = 'GG'
80
+ GH = 'GH'
81
+ GI = 'GI'
82
+ GL = 'GL'
83
+ GM = 'GM'
84
+ GN = 'GN'
85
+ GP = 'GP'
86
+ GQ = 'GQ'
87
+ GR = 'GR'
88
+ GS = 'GS'
89
+ GT = 'GT'
90
+ GU = 'GU'
91
+ GW = 'GW'
92
+ GY = 'GY'
93
+ HK = 'HK'
94
+ HM = 'HM'
95
+ HN = 'HN'
96
+ HR = 'HR'
97
+ HU = 'HU'
98
+ ID = 'ID'
99
+ IE = 'IE'
100
+ IL = 'IL'
101
+ IM = 'IM'
102
+ IN = 'IN'
103
+ IO = 'IO'
104
+ IQ = 'IQ'
105
+ IS = 'IS'
106
+ IT = 'IT'
107
+ JE = 'JE'
108
+ JM = 'JM'
109
+ JO = 'JO'
110
+ JP = 'JP'
111
+ KE = 'KE'
112
+ KG = 'KG'
113
+ KH = 'KH'
114
+ KI = 'KI'
115
+ KM = 'KM'
116
+ KN = 'KN'
117
+ KR = 'KR'
118
+ KW = 'KW'
119
+ KY = 'KY'
120
+ KZ = 'KZ'
121
+ LA = 'LA'
122
+ LB = 'LB'
123
+ LC = 'LC'
124
+ LI = 'LI'
125
+ LK = 'LK'
126
+ LR = 'LR'
127
+ LS = 'LS'
128
+ LT = 'LT'
129
+ LU = 'LU'
130
+ LV = 'LV'
131
+ MA = 'MA'
132
+ MC = 'MC'
133
+ MD = 'MD'
134
+ ME = 'ME'
135
+ MF = 'MF'
136
+ MG = 'MG'
137
+ MH = 'MH'
138
+ MK = 'MK'
139
+ MN = 'MN'
140
+ MO = 'MO'
141
+ MP = 'MP'
142
+ MQ = 'MQ'
143
+ MR = 'MR'
144
+ MS = 'MS'
145
+ MT = 'MT'
146
+ MU = 'MU'
147
+ MV = 'MV'
148
+ MW = 'MW'
149
+ MX = 'MX'
150
+ MY = 'MY'
151
+ MZ = 'MZ'
152
+ NA = 'NA'
153
+ NC = 'NC'
154
+ NE = 'NE'
155
+ NF = 'NF'
156
+ NG = 'NG'
157
+ NL = 'NL'
158
+ NO = 'NO'
159
+ NP = 'NP'
160
+ NR = 'NR'
161
+ NU = 'NU'
162
+ NZ = 'NZ'
163
+ OM = 'OM'
164
+ PA = 'PA'
165
+ PE = 'PE'
166
+ PF = 'PF'
167
+ PG = 'PG'
168
+ PH = 'PH'
169
+ PK = 'PK'
170
+ PL = 'PL'
171
+ PM = 'PM'
172
+ PN = 'PN'
173
+ PR = 'PR'
174
+ PS = 'PS'
175
+ PT = 'PT'
176
+ PW = 'PW'
177
+ PY = 'PY'
178
+ QA = 'QA'
179
+ RE = 'RE'
180
+ RO = 'RO'
181
+ RS = 'RS'
182
+ RW = 'RW'
183
+ SA = 'SA'
184
+ SB = 'SB'
185
+ SC = 'SC'
186
+ SE = 'SE'
187
+ SG = 'SG'
188
+ SH = 'SH'
189
+ SI = 'SI'
190
+ SJ = 'SJ'
191
+ SK = 'SK'
192
+ SL = 'SL'
193
+ SM = 'SM'
194
+ SN = 'SN'
195
+ SR = 'SR'
196
+ ST = 'ST'
197
+ SV = 'SV'
198
+ SX = 'SX'
199
+ SZ = 'SZ'
200
+ TC = 'TC'
201
+ TD = 'TD'
202
+ TF = 'TF'
203
+ TG = 'TG'
204
+ TH = 'TH'
205
+ TJ = 'TJ'
206
+ TK = 'TK'
207
+ TL = 'TL'
208
+ TM = 'TM'
209
+ TN = 'TN'
210
+ TO = 'TO'
211
+ TR = 'TR'
212
+ TT = 'TT'
213
+ TV = 'TV'
214
+ TW = 'TW'
215
+ TZ = 'TZ'
216
+ UA = 'UA'
217
+ UG = 'UG'
218
+ UM = 'UM'
219
+ US = 'US'
220
+ UY = 'UY'
221
+ UZ = 'UZ'
222
+ VA = 'VA'
223
+ VC = 'VC'
224
+ VG = 'VG'
225
+ VI = 'VI'
226
+ VN = 'VN'
227
+ VU = 'VU'
228
+ WF = 'WF'
229
+ WS = 'WS'
230
+ XK = 'XK'
231
+ YT = 'YT'
232
+ ZA = 'ZA'
233
+ ZM = 'ZM'
@@ -0,0 +1,34 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class CurrencyCode(PaddleStrEnum):
5
+ USD = 'USD'
6
+ EUR = 'EUR'
7
+ GBP = 'GBP'
8
+ JPY = 'JPY'
9
+ AUD = 'AUD'
10
+ CAD = 'CAD'
11
+ CHF = 'CHF'
12
+ HKD = 'HKD'
13
+ SGD = 'SGD'
14
+ SEK = 'SEK'
15
+ ARS = 'ARS'
16
+ BRL = 'BRL'
17
+ CNY = 'CNY'
18
+ COP = 'COP'
19
+ CZK = 'CZK'
20
+ DKK = 'DKK'
21
+ HUF = 'HUF'
22
+ ILS = 'ILS'
23
+ INR = 'INR'
24
+ KRW = 'KRW'
25
+ MXN = 'MXN'
26
+ NOK = 'NOK'
27
+ NZD = 'NZD'
28
+ PLN = 'PLN'
29
+ RUB = 'RUB'
30
+ THB = 'THB'
31
+ TRY = 'TRY'
32
+ TWD = 'TWD'
33
+ UAH = 'UAH'
34
+ ZAR = 'ZAR'
@@ -0,0 +1,7 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class CurrencyCodeAdjustments(PaddleStrEnum):
5
+ EUR = 'EUR'
6
+ GBP = 'GBP'
7
+ USD = 'USD'
@@ -0,0 +1,17 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class CurrencyCodePayouts(PaddleStrEnum):
5
+ AUD = 'AUD'
6
+ CAD = 'CAD'
7
+ CHF = 'CHF'
8
+ CNY = 'CNY'
9
+ CZK = 'CZK'
10
+ DKK = 'DKK'
11
+ EUR = 'EUR'
12
+ GBP = 'GBP'
13
+ HUF = 'HUF'
14
+ PLN = 'PLN'
15
+ SEK = 'SEK'
16
+ USD = 'USD'
17
+ ZAR = 'ZAR'
@@ -0,0 +1,10 @@
1
+ from dataclasses import dataclass
2
+
3
+
4
+ @dataclass
5
+ class CustomData:
6
+ data: dict | list # JSON serializable Python types
7
+
8
+
9
+ def get_parameters(self):
10
+ return self.data
@@ -0,0 +1,9 @@
1
+ from dataclasses import dataclass
2
+ from typing import Any
3
+
4
+
5
+ @dataclass
6
+ class Data:
7
+ data: dict | list | Any # TODO Any? Should be JSON serializable Python types though
8
+
9
+ # from_dict method isn't needed, unless specific processing of 'data' is required.
@@ -0,0 +1,21 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class ErrorCode(PaddleStrEnum):
5
+ AlreadyCanceled = 'already_canceled'
6
+ AlreadyRefunded = 'already_refunded'
7
+ AuthenticationFailed = 'authentication_failed'
8
+ BlockedCard = 'blocked_card'
9
+ Canceled = 'canceled'
10
+ Declined = 'declined'
11
+ ExpiredCard = 'expired_card'
12
+ Fraud = 'fraud'
13
+ InvalidAmount = 'invalid_amount'
14
+ InvalidPaymentDetails = 'invalid_payment_details'
15
+ IssuerUnavailable = 'issuer_unavailable'
16
+ NotEnoughBalance = 'not_enough_balance'
17
+ PspError = 'psp_error'
18
+ RedactedPaymentMethod = 'redacted_payment_method'
19
+ SystemError = 'system_error'
20
+ TransactionNotPermitted = 'transaction_not_permitted'
21
+ Unknown = 'unknown'
@@ -0,0 +1,16 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+
5
+ @dataclass(frozen=True)
6
+ class ImportMeta:
7
+ external_id: str | None
8
+ imported_from: str
9
+
10
+
11
+ @classmethod
12
+ def from_dict(cls, data: dict) -> ImportMeta:
13
+ return ImportMeta(
14
+ external_id = data.get('external_id'),
15
+ imported_from = data['imported_from'],
16
+ )
@@ -0,0 +1,8 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class Interval(PaddleStrEnum):
5
+ Day = 'day'
6
+ Week = 'week'
7
+ Month = 'month'
8
+ Year = 'year'
@@ -0,0 +1,19 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+ from paddle_billing.Notifications.Entities.Shared.Card import Card
5
+ from paddle_billing.Notifications.Entities.Shared.PaymentMethodType import PaymentMethodType
6
+
7
+
8
+ @dataclass
9
+ class MethodDetails:
10
+ type: PaymentMethodType
11
+ card: Card | None
12
+
13
+
14
+ @classmethod
15
+ def from_dict(cls, data: dict) -> MethodDetails:
16
+ return MethodDetails(
17
+ PaymentMethodType(data['type']),
18
+ Card.from_dict(data['card']) if data.get('card') else None,
19
+ )
@@ -0,0 +1,28 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+ from paddle_billing.Notifications.Entities.Shared.CurrencyCode import CurrencyCode
5
+
6
+
7
+ @dataclass
8
+ class Money:
9
+ """
10
+ https://developer.paddle.com/api-reference/about/data-types#money
11
+ When specifying the amount, specify it with the lowest denomination of the currency included. For example,
12
+ $420.69USD would be called with Money('42069', CurrencyCode('USD'))
13
+ """
14
+ amount: str
15
+ currency_code: CurrencyCode | None
16
+
17
+
18
+ def __post_init__(self):
19
+ if any(substring in self.amount for substring in [',', '.']):
20
+ raise ValueError('Money amount should not contain decimals or commas')
21
+
22
+
23
+ @staticmethod
24
+ def from_dict(data: dict) -> Money:
25
+ return Money(
26
+ amount = data['amount'],
27
+ currency_code = CurrencyCode(data['currency_code']) if data.get('currency_code') else None,
28
+ )
@@ -0,0 +1,18 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+ from paddle_billing.Notifications.Entities.Shared.CurrencyCodeAdjustments import CurrencyCodeAdjustments
5
+
6
+
7
+ @dataclass
8
+ class Original:
9
+ amount: str
10
+ currency_code: CurrencyCodeAdjustments
11
+
12
+
13
+ @staticmethod
14
+ def from_dict(data: dict) -> Original:
15
+ return Original(
16
+ amount = data['amount'],
17
+ currency_code = CurrencyCodeAdjustments(data['currency_code']),
18
+ )
@@ -0,0 +1,13 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class PaymentAttemptStatus(PaddleStrEnum):
5
+ Authorized = 'authorized'
6
+ AuthorizedFlagged = 'authorized_flagged'
7
+ Canceled = 'canceled'
8
+ Captured = 'captured'
9
+ Error = 'error'
10
+ ActionRequired = 'action_required'
11
+ PendingNoActionRequired = 'pending_no_action_required'
12
+ Created = 'created'
13
+ Unknown = 'unknown'
@@ -0,0 +1,15 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class PaymentMethodType(PaddleStrEnum):
5
+ Alipay = 'alipay'
6
+ ApplePay = 'apple_pay'
7
+ Bancontact = 'bancontact'
8
+ Card = 'card'
9
+ GooglePay = 'google_pay'
10
+ Ideal = 'ideal'
11
+ Offline = 'offline'
12
+ Paypal = 'paypal'
13
+ Unknown = 'unknown'
14
+ WireTransfer = 'wire_transfer'
15
+ Visa = 'visa'
@@ -0,0 +1,29 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+ from paddle_billing.Notifications.Entities.Shared.ChargebackFee import ChargebackFee
5
+ from paddle_billing.Notifications.Entities.Shared.CurrencyCodePayouts import CurrencyCodePayouts
6
+
7
+
8
+ @dataclass
9
+ class PayoutTotalsAdjustment:
10
+ subtotal: str
11
+ tax: str
12
+ total: str
13
+ fee: str
14
+ chargeback_fee: ChargebackFee | None
15
+ earnings: str
16
+ currency_code: CurrencyCodePayouts
17
+
18
+
19
+ @staticmethod
20
+ def from_dict(data: dict) -> PayoutTotalsAdjustment:
21
+ return PayoutTotalsAdjustment(
22
+ subtotal = data['subtotal'],
23
+ tax = data['tax'],
24
+ total = data['total'],
25
+ fee = data['fee'],
26
+ chargeback_fee = ChargebackFee.from_dict(data['chargeback_fee']) if data.get('chargeback_fee') else None,
27
+ earnings = data['earnings'],
28
+ currency_code = CurrencyCodePayouts(data['currency_code']),
29
+ )
@@ -0,0 +1,16 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+
5
+ @dataclass
6
+ class PriceQuantity:
7
+ minimum: int
8
+ maximum: int
9
+
10
+
11
+ @staticmethod
12
+ def from_dict(data: dict) -> PriceQuantity:
13
+ return PriceQuantity(
14
+ minimum = data['minimum'],
15
+ maximum = data['maximum'],
16
+ )
@@ -0,0 +1,6 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class Status(PaddleStrEnum):
5
+ Active = 'active'
6
+ Archived = 'archived'
@@ -0,0 +1,13 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class TaxCategory(PaddleStrEnum):
5
+ DigitalGoods = 'digital-goods'
6
+ Ebooks = 'ebooks'
7
+ ImplementationServices = 'implementation-services'
8
+ ProfessionalServices = 'professional-services'
9
+ Saas = 'saas'
10
+ SoftwareProgrammingServices = 'software-programming-services'
11
+ Standard = 'standard'
12
+ TrainingServices = 'training-services'
13
+ WebsiteHosting = 'website-hosting'
@@ -0,0 +1,7 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class TaxMode(PaddleStrEnum):
5
+ AccountSetting = 'account_setting'
6
+ External = 'external'
7
+ Internal = 'internal'
@@ -0,0 +1,18 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+ from paddle_billing.Notifications.Entities.Shared.Totals import Totals
5
+
6
+
7
+ @dataclass
8
+ class TaxRatesUsed:
9
+ tax_rate: str
10
+ totals: Totals
11
+
12
+
13
+ @staticmethod
14
+ def from_dict(data: dict) -> TaxRatesUsed:
15
+ return TaxRatesUsed(
16
+ tax_rate = data['tax_rate'],
17
+ totals = Totals.from_dict(data['totals']),
18
+ )
@@ -0,0 +1,18 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+ from paddle_billing.Notifications.Entities.Shared.Interval import Interval
5
+
6
+
7
+ @dataclass
8
+ class TimePeriod:
9
+ interval: Interval
10
+ frequency: int
11
+
12
+
13
+ @staticmethod
14
+ def from_dict(data: dict) -> TimePeriod:
15
+ return TimePeriod(
16
+ interval = Interval(data['interval']),
17
+ frequency = data['frequency'],
18
+ )
@@ -0,0 +1,20 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+
4
+
5
+ @dataclass
6
+ class Totals:
7
+ subtotal: str
8
+ discount: str
9
+ tax: str
10
+ total: str
11
+
12
+
13
+ @staticmethod
14
+ def from_dict(data: dict) -> Totals:
15
+ return Totals(
16
+ subtotal = data['subtotal'],
17
+ discount = data['discount'],
18
+ tax = data['tax'],
19
+ total = data['total'],
20
+ )
@@ -0,0 +1,10 @@
1
+ from paddle_billing.PaddleStrEnum import PaddleStrEnum
2
+
3
+
4
+ class TransactionOrigin(PaddleStrEnum):
5
+ Api = 'api'
6
+ SubscriptionCharge = 'subscription_charge'
7
+ SubscriptionPaymentMethodChange = 'subscription_payment_method_change'
8
+ SubscriptionRecurring = 'subscription_recurring'
9
+ SubscriptionUpdate = 'subscription_update'
10
+ Web = 'web'
@@ -0,0 +1,35 @@
1
+ from __future__ import annotations
2
+ from dataclasses import dataclass
3
+ from datetime import datetime
4
+
5
+ from paddle_billing.Notifications.Entities.Shared.ErrorCode import ErrorCode
6
+ from paddle_billing.Notifications.Entities.Shared.MethodDetails import MethodDetails
7
+ from paddle_billing.Notifications.Entities.Shared.PaymentAttemptStatus import PaymentAttemptStatus
8
+
9
+
10
+ @dataclass
11
+ class TransactionPaymentAttempt:
12
+ payment_attempt_id: str
13
+ payment_method_id: str
14
+ stored_payment_method_id: str
15
+ amount: str
16
+ status: PaymentAttemptStatus
17
+ error_code: ErrorCode | None
18
+ method_details: MethodDetails
19
+ created_at: datetime
20
+ captured_at: datetime | None
21
+
22
+
23
+ @staticmethod
24
+ def from_dict(data: dict) -> TransactionPaymentAttempt:
25
+ return TransactionPaymentAttempt(
26
+ payment_attempt_id = data['payment_attempt_id'],
27
+ payment_method_id = data['payment_method_id'],
28
+ stored_payment_method_id = data['stored_payment_method_id'],
29
+ amount = data['amount'],
30
+ status = PaymentAttemptStatus(data['status']),
31
+ method_details = MethodDetails.from_dict(data['method_details']),
32
+ created_at = datetime.fromisoformat(data['created_at']),
33
+ error_code = ErrorCode(data['error_code']) if data.get('error_code') else None,
34
+ captured_at = datetime.fromisoformat(data['captured_at']) if data.get('captured_at') else None,
35
+ )