dana-python 1.1.5__tar.gz → 1.1.7__tar.gz

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 (228) hide show
  1. dana_python-1.1.7/PKG-INFO +109 -0
  2. dana_python-1.1.7/README.md +84 -0
  3. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/enum.py +1 -1
  4. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/consult_pay_payment_info.py +3 -3
  5. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/pay_option_detail.py +3 -3
  6. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/pay_option_info.py +3 -3
  7. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/enum.py +1 -1
  8. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/pay_option_info.py +3 -3
  9. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/util.py +2 -2
  10. dana_python-1.1.7/dana_python.egg-info/PKG-INFO +109 -0
  11. {dana_python-1.1.5 → dana_python-1.1.7}/pyproject.toml +1 -1
  12. dana_python-1.1.5/PKG-INFO +0 -60
  13. dana_python-1.1.5/README.md +0 -35
  14. dana_python-1.1.5/dana_python.egg-info/PKG-INFO +0 -60
  15. {dana_python-1.1.5 → dana_python-1.1.7}/LICENSE +0 -0
  16. {dana_python-1.1.5 → dana_python-1.1.7}/dana/__init__.py +0 -0
  17. {dana_python-1.1.5 → dana_python-1.1.7}/dana/api_client.py +0 -0
  18. {dana_python-1.1.5 → dana_python-1.1.7}/dana/api_response.py +0 -0
  19. {dana_python-1.1.5 → dana_python-1.1.7}/dana/base/__init__.py +0 -0
  20. {dana_python-1.1.5 → dana_python-1.1.7}/dana/base/configuration.py +0 -0
  21. {dana_python-1.1.5 → dana_python-1.1.7}/dana/base/model.py +0 -0
  22. {dana_python-1.1.5 → dana_python-1.1.7}/dana/base/types.py +0 -0
  23. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/__init__.py +0 -0
  24. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/__init__.py +0 -0
  25. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/api/__init__.py +0 -0
  26. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/api/disbursement_api.py +0 -0
  27. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/enum.py +0 -0
  28. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/__init__.py +0 -0
  29. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/bank_account_inquiry_request.py +0 -0
  30. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/bank_account_inquiry_request_additional_info.py +0 -0
  31. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/bank_account_inquiry_response.py +0 -0
  32. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/bank_account_inquiry_response_additional_info.py +0 -0
  33. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/dana_account_inquiry_request.py +0 -0
  34. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/dana_account_inquiry_request_additional_info.py +0 -0
  35. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/dana_account_inquiry_response.py +0 -0
  36. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/money.py +0 -0
  37. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_bank_inquiry_status_request.py +0 -0
  38. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_bank_inquiry_status_response.py +0 -0
  39. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_bank_request.py +0 -0
  40. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_bank_request_additional_info.py +0 -0
  41. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_bank_response.py +0 -0
  42. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_dana_inquiry_status_request.py +0 -0
  43. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_dana_inquiry_status_response.py +0 -0
  44. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_dana_request.py +0 -0
  45. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_dana_request_additional_info.py +0 -0
  46. {dana_python-1.1.5 → dana_python-1.1.7}/dana/disbursement/v1/models/transfer_to_dana_response.py +0 -0
  47. {dana_python-1.1.5 → dana_python-1.1.7}/dana/exceptions.py +0 -0
  48. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/__init__.py +0 -0
  49. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/__init__.py +0 -0
  50. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/api/__init__.py +0 -0
  51. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/api/merchant_management_api.py +0 -0
  52. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/enum.py +0 -0
  53. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/__init__.py +0 -0
  54. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/address_info.py +0 -0
  55. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/business_docs.py +0 -0
  56. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_division_request.py +0 -0
  57. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_division_request_ext_info.py +0 -0
  58. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_division_response.py +0 -0
  59. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_division_response_response.py +0 -0
  60. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_division_response_response_body.py +0 -0
  61. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_division_response_response_head.py +0 -0
  62. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_shop_request.py +0 -0
  63. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_shop_response.py +0 -0
  64. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_shop_response_response.py +0 -0
  65. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_shop_response_response_body.py +0 -0
  66. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/create_shop_response_response_head.py +0 -0
  67. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/division_resource_info.py +0 -0
  68. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/merchant_resource_information.py +0 -0
  69. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/mobile_no_info.py +0 -0
  70. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/pic_info.py +0 -0
  71. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_division_request.py +0 -0
  72. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_division_response.py +0 -0
  73. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_division_response_response.py +0 -0
  74. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_division_response_response_body.py +0 -0
  75. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_division_response_response_head.py +0 -0
  76. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_merchant_resource_request.py +0 -0
  77. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_merchant_resource_response.py +0 -0
  78. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_merchant_resource_response_response.py +0 -0
  79. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_merchant_resource_response_response_body.py +0 -0
  80. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_merchant_resource_response_response_head.py +0 -0
  81. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_shop_request.py +0 -0
  82. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_shop_response.py +0 -0
  83. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_shop_response_response.py +0 -0
  84. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_shop_response_response_body.py +0 -0
  85. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/query_shop_response_response_head.py +0 -0
  86. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/result_info.py +0 -0
  87. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/shop_resource_info.py +0 -0
  88. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_division_request.py +0 -0
  89. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_division_response.py +0 -0
  90. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_division_response_response.py +0 -0
  91. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_division_response_response_body.py +0 -0
  92. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_division_response_response_head.py +0 -0
  93. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_shop_request.py +0 -0
  94. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_shop_response.py +0 -0
  95. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_shop_response_response.py +0 -0
  96. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/update_shop_response_response_head.py +0 -0
  97. {dana_python-1.1.5 → dana_python-1.1.7}/dana/merchant_management/v1/models/user_name.py +0 -0
  98. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/__init__.py +0 -0
  99. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/__init__.py +0 -0
  100. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/api/__init__.py +0 -0
  101. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/api/payment_gateway_api.py +0 -0
  102. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/__init__.py +0 -0
  103. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/actor_context.py +0 -0
  104. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/amount_detail.py +0 -0
  105. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/audit_info.py +0 -0
  106. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/buyer.py +0 -0
  107. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/cancel_order_request.py +0 -0
  108. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/cancel_order_response.py +0 -0
  109. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/consult_pay_request.py +0 -0
  110. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/consult_pay_request_additional_info.py +0 -0
  111. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/consult_pay_response.py +0 -0
  112. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/create_order_by_api_additional_info.py +0 -0
  113. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/create_order_by_api_request.py +0 -0
  114. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/create_order_by_redirect_additional_info.py +0 -0
  115. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/create_order_by_redirect_request.py +0 -0
  116. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/create_order_response.py +0 -0
  117. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/create_order_response_additional_info.py +0 -0
  118. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/env_info.py +0 -0
  119. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/goods.py +0 -0
  120. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/money.py +0 -0
  121. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/order_api_object.py +0 -0
  122. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/order_redirect_object.py +0 -0
  123. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/pay_option_additional_info.py +0 -0
  124. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/payment_view.py +0 -0
  125. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/promo_info.py +0 -0
  126. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/query_payment_request.py +0 -0
  127. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/query_payment_response.py +0 -0
  128. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/query_payment_response_additional_info.py +0 -0
  129. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/refund_option_bill.py +0 -0
  130. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/refund_order_request.py +0 -0
  131. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/refund_order_request_additional_info.py +0 -0
  132. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/refund_order_response.py +0 -0
  133. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/seller.py +0 -0
  134. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/shipping_info.py +0 -0
  135. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/status_detail.py +0 -0
  136. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/time_detail.py +0 -0
  137. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/url_param.py +0 -0
  138. {dana_python-1.1.5 → dana_python-1.1.7}/dana/payment_gateway/v1/models/virtual_account_info.py +0 -0
  139. {dana_python-1.1.5 → dana_python-1.1.7}/dana/rest.py +0 -0
  140. {dana_python-1.1.5 → dana_python-1.1.7}/dana/utils/models.py +0 -0
  141. {dana_python-1.1.5 → dana_python-1.1.7}/dana/utils/open_api_configuration.py +0 -0
  142. {dana_python-1.1.5 → dana_python-1.1.7}/dana/utils/open_api_header.py +0 -0
  143. {dana_python-1.1.5 → dana_python-1.1.7}/dana/utils/script.py +0 -0
  144. {dana_python-1.1.5 → dana_python-1.1.7}/dana/utils/snap_configuration.py +0 -0
  145. {dana_python-1.1.5 → dana_python-1.1.7}/dana/utils/snap_header.py +0 -0
  146. {dana_python-1.1.5 → dana_python-1.1.7}/dana/utils/url.py +0 -0
  147. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/__init__.py +0 -0
  148. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/finish_notify_payment_info.py +0 -0
  149. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/finish_notify_request.py +0 -0
  150. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/finish_notify_request_additional_info.py +0 -0
  151. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/finish_notify_response.py +0 -0
  152. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/money.py +0 -0
  153. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/pay_option_info.py +0 -0
  154. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/shop_info.py +0 -0
  155. {dana_python-1.1.5 → dana_python-1.1.7}/dana/webhook/webhook.py +0 -0
  156. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/__init__.py +0 -0
  157. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/__init__.py +0 -0
  158. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/api/__init__.py +0 -0
  159. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/api/widget_api.py +0 -0
  160. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/__init__.py +0 -0
  161. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/account_info.py +0 -0
  162. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/account_unbinding_request.py +0 -0
  163. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/account_unbinding_request_additional_info.py +0 -0
  164. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/account_unbinding_response.py +0 -0
  165. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/amount_detail.py +0 -0
  166. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_ott_request.py +0 -0
  167. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_ott_request_additional_info.py +0 -0
  168. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_ott_response.py +0 -0
  169. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_ott_response_user_resources_inner.py +0 -0
  170. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_token_authorization_code_request.py +0 -0
  171. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_token_refresh_token_request.py +0 -0
  172. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_token_response.py +0 -0
  173. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_token_response_additional_info.py +0 -0
  174. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/apply_token_response_additional_info_user_info.py +0 -0
  175. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/balance_inquiry_request.py +0 -0
  176. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/balance_inquiry_request_additional_info.py +0 -0
  177. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/balance_inquiry_response.py +0 -0
  178. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/buyer.py +0 -0
  179. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/cancel_order_request.py +0 -0
  180. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/cancel_order_response.py +0 -0
  181. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/env_info.py +0 -0
  182. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/goods.py +0 -0
  183. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/international_order_info.py +0 -0
  184. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/international_order_info_exchange_rate.py +0 -0
  185. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/money.py +0 -0
  186. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/oauth2_url_data.py +0 -0
  187. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/oauth2_url_data_seamless_data.py +0 -0
  188. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/order.py +0 -0
  189. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/pay_option_detail.py +0 -0
  190. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/pay_option_detail_additional_info.py +0 -0
  191. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/payment_promo_info.py +0 -0
  192. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/payment_view.py +0 -0
  193. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_payment_request.py +0 -0
  194. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_payment_response.py +0 -0
  195. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_payment_response_additional_info.py +0 -0
  196. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_user_profile_request.py +0 -0
  197. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_user_profile_response.py +0 -0
  198. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_user_profile_response_response.py +0 -0
  199. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_user_profile_response_response_body.py +0 -0
  200. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/query_user_profile_response_response_head.py +0 -0
  201. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/refund_order_request.py +0 -0
  202. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/refund_order_request_additional_info.py +0 -0
  203. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/refund_order_response.py +0 -0
  204. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/refund_promo_info.py +0 -0
  205. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/result_info.py +0 -0
  206. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/seller.py +0 -0
  207. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/service_info.py +0 -0
  208. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/shipping_info.py +0 -0
  209. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/status_detail.py +0 -0
  210. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/time_detail.py +0 -0
  211. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/url_param.py +0 -0
  212. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/user_resource_info.py +0 -0
  213. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/virtual_account_info.py +0 -0
  214. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/widget_payment_request.py +0 -0
  215. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/widget_payment_request_additional_info.py +0 -0
  216. {dana_python-1.1.5 → dana_python-1.1.7}/dana/widget/v1/models/widget_payment_response.py +0 -0
  217. {dana_python-1.1.5 → dana_python-1.1.7}/dana_python.egg-info/SOURCES.txt +0 -0
  218. {dana_python-1.1.5 → dana_python-1.1.7}/dana_python.egg-info/dependency_links.txt +0 -0
  219. {dana_python-1.1.5 → dana_python-1.1.7}/dana_python.egg-info/requires.txt +0 -0
  220. {dana_python-1.1.5 → dana_python-1.1.7}/dana_python.egg-info/top_level.txt +0 -0
  221. {dana_python-1.1.5 → dana_python-1.1.7}/setup.cfg +0 -0
  222. {dana_python-1.1.5 → dana_python-1.1.7}/tests/test_disbursement_api.py +0 -0
  223. {dana_python-1.1.5 → dana_python-1.1.7}/tests/test_merchant_management_api.py +0 -0
  224. {dana_python-1.1.5 → dana_python-1.1.7}/tests/test_payment_gateway_api.py +0 -0
  225. {dana_python-1.1.5 → dana_python-1.1.7}/tests/test_payment_gateway_with_automation.py +0 -0
  226. {dana_python-1.1.5 → dana_python-1.1.7}/tests/test_webhook.py +0 -0
  227. {dana_python-1.1.5 → dana_python-1.1.7}/tests/test_widget_api.py +0 -0
  228. {dana_python-1.1.5 → dana_python-1.1.7}/tests/test_widget_with_automation.py +0 -0
@@ -0,0 +1,109 @@
1
+ Metadata-Version: 2.4
2
+ Name: dana-python
3
+ Version: 1.1.7
4
+ Summary: API Client (SDK) for DANA APIs based on https://dashboard.dana.id/api-docs
5
+ Author-email: DANA Package Manager <package-manager@dana.id>
6
+ Maintainer-email: DANA Package Manager <package-manager@dana.id>
7
+ License-Expression: Apache-2.0
8
+ Project-URL: homepage, https://dashboard.dana.id/api-docs
9
+ Project-URL: repository, https://github.com/dana-id/dana-python
10
+ Keywords: DANA,DANA ID Docs,DANA SDK,DANA Python,DANA API Client,DANA Python API Client,DANA Python SDK
11
+ Requires-Python: >3.9.1
12
+ Description-Content-Type: text/markdown
13
+ License-File: LICENSE
14
+ Requires-Dist: annotated-types==0.7.0
15
+ Requires-Dist: cffi==1.17.1
16
+ Requires-Dist: cryptography<46.0.0,>=44.0.2
17
+ Requires-Dist: pycparser==2.22
18
+ Requires-Dist: pydantic<3.0.0,>=2.10.6
19
+ Requires-Dist: pydantic-core<3.0.0,>=2.27.2
20
+ Requires-Dist: python-dateutil==2.9.0.post0
21
+ Requires-Dist: six==1.17.0
22
+ Requires-Dist: typing-extensions<5.0.0,>=4.12.2
23
+ Requires-Dist: urllib3<3.0.0,>=2.3.0
24
+ Dynamic: license-file
25
+
26
+ # dana-python
27
+ The official DANA Python SDK provides a simple and convenient way to call DANA's REST API in applications written in Python (based on https://dashboard.dana.id/api-docs-v2/)
28
+
29
+ ## ⚠️ Run This First - Save Days of Debugging
30
+
31
+ Before writing any integration code, **run our automated test suite**. It takes **under 2 minutes** and shows you how the full flow works — **with your own credentials**.
32
+
33
+ Here is the link: https://github.com/dana-id/uat-script.
34
+
35
+ ### Why This Matters
36
+
37
+ - 🧪 Validates your setup instantly
38
+ - 👀 **See exactly how each scenario flows**
39
+ - 🧾 Gives us logs to help you faster
40
+ - 🚫 Skipping this = guaranteed delays
41
+
42
+
43
+ ### What It Does
44
+
45
+ ✅ Runs full scenario checks for DANA Sandbox
46
+
47
+ ✅ Installs and executes automatically
48
+
49
+ ✅ Shows real-time results in your terminal
50
+
51
+ ✅ Runs in a safe, simulation-only environment
52
+
53
+ > Don't fly blind. Run the test first. See the flow. Build with confidence.
54
+
55
+
56
+ .
57
+
58
+ .
59
+
60
+
61
+ # Getting Started
62
+
63
+ ## Requirements.
64
+
65
+ Python 3.9.1+
66
+
67
+ ## Installation & Usage
68
+ ### pip install
69
+
70
+ If the python package is hosted on a repository, you can install directly using:
71
+
72
+ ```sh
73
+ pip install dana-python
74
+ ```
75
+
76
+ (you may need to run `pip` with root permission: `sudo pip install dana-python`)
77
+
78
+ Then import the package, ex:
79
+ ```python
80
+ import dana.payment_gateway.v1
81
+ ```
82
+
83
+ ## Environment Variables
84
+
85
+ Before using the SDK, please make sure to set the following environment variables (In .env):
86
+
87
+ | Name | Description | Example Value |
88
+ | ---------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
89
+ | `ENV` or `DANA_ENV` | Defines which environment the SDK will use. Possible values: `SANDBOX` or `PRODUCTION`. | `SANDBOX` |
90
+ | `X_PARTNER_ID` | Unique identifier for partner, provided by DANA, also known as `clientId`. | 1970010100000000000000 |
91
+ | `PRIVATE_KEY` | Your private key string. | `-----BEGIN PRIVATE KEY-----MIIBVgIBADANBg...LsvTqw==-----END PRIVATE KEY-----` |
92
+ | `PRIVATE_KEY_PATH` | Path to your private key file. If both are set, `PRIVATE_KEY_PATH` is used. | /path/to/your_private_key.pem |
93
+ | `DANA_PUBLIC_KEY` | DANA public key string for parsing webhook. | `-----BEGIN PUBLIC KEY-----MIIBIjANBgkq...Do/QIDAQAB-----END PUBLIC KEY-----` |
94
+ | `DANA_PUBLIC_KEY_PATH` | Path to DANA public key file for parsing webhook. If both set, `DANA_PUBLIC_KEY_PATH is used. | /path/to/dana_public_key.pem |
95
+ | `ORIGIN` | Origin domain. | https://yourdomain.com |
96
+ | `CLIENT_SECRET` | Assigned client secret during registration. Must be set for DisbursementApi | your_client_secret |
97
+
98
+ You can see these variables in .env.example, fill it, and change the file name to .env (remove the .example extension)
99
+
100
+ Then you can choose these following APIs based on the business solution you want to integrate:
101
+
102
+ ## Documentation for API Endpoints
103
+
104
+ API | Description
105
+ ------------- | -------------
106
+ [**PaymentGatewayApi**](docs/payment_gateway/v1/PaymentGatewayApi.md) | API for doing operations in DANA Payment Gateway (Gapura)
107
+ [**WidgetApi**](docs/widget/v1/WidgetApi.md) | API for enabling the user to make payment from merchant’s platform with redirecting to DANA’s platform
108
+ [**DisbursementApi**](docs/disbursement/v1/DisbursementApi.md) | API for doing operations in DANA Disbursement
109
+ [**MerchantManagementApi**](docs/merchant_management/v1/MerchantManagementApi.md) | API for doing operations in DANA Merchant Management
@@ -0,0 +1,84 @@
1
+ # dana-python
2
+ The official DANA Python SDK provides a simple and convenient way to call DANA's REST API in applications written in Python (based on https://dashboard.dana.id/api-docs-v2/)
3
+
4
+ ## ⚠️ Run This First - Save Days of Debugging
5
+
6
+ Before writing any integration code, **run our automated test suite**. It takes **under 2 minutes** and shows you how the full flow works — **with your own credentials**.
7
+
8
+ Here is the link: https://github.com/dana-id/uat-script.
9
+
10
+ ### Why This Matters
11
+
12
+ - 🧪 Validates your setup instantly
13
+ - 👀 **See exactly how each scenario flows**
14
+ - 🧾 Gives us logs to help you faster
15
+ - 🚫 Skipping this = guaranteed delays
16
+
17
+
18
+ ### What It Does
19
+
20
+ ✅ Runs full scenario checks for DANA Sandbox
21
+
22
+ ✅ Installs and executes automatically
23
+
24
+ ✅ Shows real-time results in your terminal
25
+
26
+ ✅ Runs in a safe, simulation-only environment
27
+
28
+ > Don't fly blind. Run the test first. See the flow. Build with confidence.
29
+
30
+
31
+ .
32
+
33
+ .
34
+
35
+
36
+ # Getting Started
37
+
38
+ ## Requirements.
39
+
40
+ Python 3.9.1+
41
+
42
+ ## Installation & Usage
43
+ ### pip install
44
+
45
+ If the python package is hosted on a repository, you can install directly using:
46
+
47
+ ```sh
48
+ pip install dana-python
49
+ ```
50
+
51
+ (you may need to run `pip` with root permission: `sudo pip install dana-python`)
52
+
53
+ Then import the package, ex:
54
+ ```python
55
+ import dana.payment_gateway.v1
56
+ ```
57
+
58
+ ## Environment Variables
59
+
60
+ Before using the SDK, please make sure to set the following environment variables (In .env):
61
+
62
+ | Name | Description | Example Value |
63
+ | ---------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
64
+ | `ENV` or `DANA_ENV` | Defines which environment the SDK will use. Possible values: `SANDBOX` or `PRODUCTION`. | `SANDBOX` |
65
+ | `X_PARTNER_ID` | Unique identifier for partner, provided by DANA, also known as `clientId`. | 1970010100000000000000 |
66
+ | `PRIVATE_KEY` | Your private key string. | `-----BEGIN PRIVATE KEY-----MIIBVgIBADANBg...LsvTqw==-----END PRIVATE KEY-----` |
67
+ | `PRIVATE_KEY_PATH` | Path to your private key file. If both are set, `PRIVATE_KEY_PATH` is used. | /path/to/your_private_key.pem |
68
+ | `DANA_PUBLIC_KEY` | DANA public key string for parsing webhook. | `-----BEGIN PUBLIC KEY-----MIIBIjANBgkq...Do/QIDAQAB-----END PUBLIC KEY-----` |
69
+ | `DANA_PUBLIC_KEY_PATH` | Path to DANA public key file for parsing webhook. If both set, `DANA_PUBLIC_KEY_PATH is used. | /path/to/dana_public_key.pem |
70
+ | `ORIGIN` | Origin domain. | https://yourdomain.com |
71
+ | `CLIENT_SECRET` | Assigned client secret during registration. Must be set for DisbursementApi | your_client_secret |
72
+
73
+ You can see these variables in .env.example, fill it, and change the file name to .env (remove the .example extension)
74
+
75
+ Then you can choose these following APIs based on the business solution you want to integrate:
76
+
77
+ ## Documentation for API Endpoints
78
+
79
+ API | Description
80
+ ------------- | -------------
81
+ [**PaymentGatewayApi**](docs/payment_gateway/v1/PaymentGatewayApi.md) | API for doing operations in DANA Payment Gateway (Gapura)
82
+ [**WidgetApi**](docs/widget/v1/WidgetApi.md) | API for enabling the user to make payment from merchant’s platform with redirecting to DANA’s platform
83
+ [**DisbursementApi**](docs/disbursement/v1/DisbursementApi.md) | API for doing operations in DANA Disbursement
84
+ [**MerchantManagementApi**](docs/merchant_management/v1/MerchantManagementApi.md) | API for doing operations in DANA Merchant Management
@@ -42,7 +42,7 @@ class PayOption(str, Enum):
42
42
  VIRTUAL_ACCOUNT_BTPN = "VIRTUAL_ACCOUNT_BTPN"
43
43
  VIRTUAL_ACCOUNT_CIMB = "VIRTUAL_ACCOUNT_CIMB"
44
44
  VIRTUAL_ACCOUNT_PERMATA = "VIRTUAL_ACCOUNT_PERMATA"
45
- VIRTUAL_ACCOUNT_PANIN = "VIRTUAL_ACCOUNT_PANIN"
45
+ VIRTUAL_ACCOUNT_PANI = "VIRTUAL_ACCOUNT_PANI"
46
46
 
47
47
  class AcquirementStatus(str, Enum):
48
48
  INIT = "INIT"
@@ -47,7 +47,7 @@ class ConsultPayPaymentInfo(BaseModel, BaseSdkModel):
47
47
  ConsultPayPaymentInfo
48
48
  """ # noqa: E501
49
49
  pay_method: Annotated[str, Field(strict=True, max_length=64)] = Field(description="Payment method that used to payment. The enums:<br> * BALANCE - Payment method with balance<br> * COUPON - Payment method with coupon<br> * NET_BANKING - Payment method with internet banking<br> * CREDIT_CARD - Payment method with credit card<br> * DEBIT_CARD - Payment method with debit card<br> * VIRTUAL_ACCOUNT - Payment method with virtual account<br> * OTC - Payment method with OTC<br> * DIRECT_DEBIT_CREDIT_CARD - Payment method with direct debit of credit card<br> * DIRECT_DEBIT_DEBIT_CARD - Payment method with direct debit of debit card<br> * ONLINE_CREDIT - Payment method with online Credit<br> * LOAN_CREDIT - Payment method with DANA Cicil<br> * NETWORK_PAY - Payment method with e-wallet<br> * CARD - Payment method with card<br> ")
50
- pay_option: Optional[Annotated[str, Field(strict=True, max_length=128)]] = Field(default=None, description="Payment option that available to used to payment, depends on the payment method. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANIN - Payment method with Panin virtual account<br> ")
50
+ pay_option: Optional[Annotated[str, Field(strict=True, max_length=128)]] = Field(default=None, description="Payment option that available to used to payment, depends on the payment method. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANI - Payment method with Panin virtual account<br> ")
51
51
  promo_infos: Optional[List[PromoInfo]] = Field(default=None, description="Additional Information of promotion")
52
52
  __properties: ClassVar[List[str]] = ["payMethod", "payOption", "promoInfos"]
53
53
 
@@ -66,8 +66,8 @@ class ConsultPayPaymentInfo(BaseModel, BaseSdkModel):
66
66
  if not value:
67
67
  return value
68
68
 
69
- if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN']):
70
- raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN')")
69
+ if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI']):
70
+ raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI')")
71
71
  return value
72
72
 
73
73
  model_config = ConfigDict(
@@ -48,7 +48,7 @@ class PayOptionDetail(BaseModel, BaseSdkModel):
48
48
  PayOptionDetail
49
49
  """ # noqa: E501
50
50
  pay_method: Annotated[str, Field(strict=True, max_length=64)] = Field(description="Payment method that used to payment. The enums:<br> * BALANCE - Payment method with balance<br> * COUPON - Payment method with coupon<br> * NET_BANKING - Payment method with internet banking<br> * CREDIT_CARD - Payment method with credit card<br> * DEBIT_CARD - Payment method with debit card<br> * VIRTUAL_ACCOUNT - Payment method with virtual account<br> * OTC - Payment method with OTC<br> * DIRECT_DEBIT_CREDIT_CARD - Payment method with direct debit of credit card<br> * DIRECT_DEBIT_DEBIT_CARD - Payment method with direct debit of debit card<br> * ONLINE_CREDIT - Payment method with online Credit<br> * LOAN_CREDIT - Payment method with DANA Cicil<br> * NETWORK_PAY - Payment method with e-wallet<br> * CARD - Payment method with card<br> ")
51
- pay_option: Annotated[str, Field(strict=True, max_length=64)] = Field(description="Payment option that available to used to payment, depends on the payment method. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANIN - Payment method with Panin virtual account<br> ")
51
+ pay_option: Annotated[str, Field(strict=True, max_length=64)] = Field(description="Payment option that available to used to payment, depends on the payment method. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANI - Payment method with Panin virtual account<br> ")
52
52
  trans_amount: Money = Field()
53
53
  fee_amount: Optional[Money] = Field(default=None)
54
54
  card_token: Optional[Annotated[str, Field(strict=True, max_length=64)]] = Field(default=None, description="Token that used for payment with card")
@@ -70,8 +70,8 @@ class PayOptionDetail(BaseModel, BaseSdkModel):
70
70
  """Validates the enum"""
71
71
  if value == "":
72
72
  return value
73
- if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PG_QRIS', 'NETWORK_PAY_PC_INDOMARET', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN']):
74
- raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PG_QRIS', 'NETWORK_PAY_PC_INDOMARET', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN')")
73
+ if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PG_QRIS', 'NETWORK_PAY_PC_INDOMARET', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI']):
74
+ raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PG_QRIS', 'NETWORK_PAY_PC_INDOMARET', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI')")
75
75
  return value
76
76
 
77
77
  model_config = ConfigDict(
@@ -47,7 +47,7 @@ class PayOptionInfo(BaseModel, BaseSdkModel):
47
47
  PayOptionInfo
48
48
  """ # noqa: E501
49
49
  pay_method: Annotated[str, Field(strict=True, max_length=64)] = Field(description="Payment method name. The enums:<br> * BALANCE - Payment method with balance<br> * COUPON - Payment method with coupon<br> * NET_BANKING - Payment method with internet banking<br> * CREDIT_CARD - Payment method with credit card<br> * DEBIT_CARD - Payment method with debit card<br> * VIRTUAL_ACCOUNT - Payment method with virtual account<br> * OTC - Payment method with OTC<br> * DIRECT_DEBIT_CREDIT_CARD - Payment method with direct debit of credit card<br> * DIRECT_DEBIT_DEBIT_CARD - Payment method with direct debit of debit card<br> * ONLINE_CREDIT - Payment method with online Credit<br> * LOAN_CREDIT - Payment method with DANA Cicil<br> * NETWORK_PAY - Payment method with e-wallet * CARD - Payment method with Card ")
50
- pay_option: Optional[Annotated[str, Field(strict=True, max_length=64)]] = Field(default=None, description="Payment option which shows the provider of this payment. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANIN - Payment method with Panin virtual account<br> ")
50
+ pay_option: Optional[Annotated[str, Field(strict=True, max_length=64)]] = Field(default=None, description="Payment option which shows the provider of this payment. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANI - Payment method with Panin virtual account<br> ")
51
51
  pay_amount: Optional[Money] = Field(default=None, description="Pay amount. Contains two sub-fields:<br> 1. Value: Transaction amount, including the cents<br> 2. Currency: Currency code based on ISO<br> ")
52
52
  trans_amount: Optional[Money] = Field(default=None, description="Trans amount. Contains two sub-fields:<br> 1. Value: Transaction amount, including the cents<br> 2. Currency: Currency code based on ISO<br> ")
53
53
  charge_amount: Optional[Money] = Field(default=None, description="Charge amount. Contains two sub-fields:<br> 1. Value: Transaction amount, including the cents<br> 2. Currency: Currency code based on ISO<br> ")
@@ -71,8 +71,8 @@ class PayOptionInfo(BaseModel, BaseSdkModel):
71
71
  if not value:
72
72
  return value
73
73
 
74
- if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN']):
75
- raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN')")
74
+ if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI']):
75
+ raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI')")
76
76
  return value
77
77
 
78
78
  model_config = ConfigDict(
@@ -97,7 +97,7 @@ class PayOption(str, Enum):
97
97
  VIRTUAL_ACCOUNT_BTPN = "VIRTUAL_ACCOUNT_BTPN"
98
98
  VIRTUAL_ACCOUNT_CIMB = "VIRTUAL_ACCOUNT_CIMB"
99
99
  VIRTUAL_ACCOUNT_PERMATA = "VIRTUAL_ACCOUNT_PERMATA"
100
- VIRTUAL_ACCOUNT_PANIN = "VIRTUAL_ACCOUNT_PANIN"
100
+ VIRTUAL_ACCOUNT_PANI = "VIRTUAL_ACCOUNT_PANI"
101
101
 
102
102
  class Type(str, Enum):
103
103
  PAY_RETURN = "PAY_RETURN"
@@ -47,7 +47,7 @@ class PayOptionInfo(BaseModel, BaseSdkModel):
47
47
  PayOptionInfo
48
48
  """ # noqa: E501
49
49
  pay_method: Annotated[str, Field(strict=True, max_length=64)] = Field(description="Payment method name. The enums:<br> * BALANCE - Payment method with balance<br> * COUPON - Payment method with coupon<br> * NET_BANKING - Payment method with internet banking<br> * CREDIT_CARD - Payment method with credit card<br> * DEBIT_CARD - Payment method with debit card<br> * VIRTUAL_ACCOUNT - Payment method with virtual account<br> * OTC - Payment method with OTC<br> * DIRECT_DEBIT_CREDIT_CARD - Payment method with direct debit of credit card<br> * DIRECT_DEBIT_DEBIT_CARD - Payment method with direct debit of debit card<br> * ONLINE_CREDIT - Payment method with online Credit<br> * LOAN_CREDIT - Payment method with DANA Cicil<br> * NETWORK_PAY - Payment method with e-wallet * CARD - Payment method with Card ")
50
- pay_option: Optional[Annotated[str, Field(strict=True, max_length=64)]] = Field(default=None, description="Payment option which shows the provider of this payment. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANIN - Payment method with Panin virtual account<br> ")
50
+ pay_option: Optional[Annotated[str, Field(strict=True, max_length=64)]] = Field(default=None, description="Payment option which shows the provider of this payment. The enums:<br> * NETWORK_PAY_PG_SPAY - Payment method with ShopeePay e-wallet<br> * NETWORK_PAY_PG_OVO - Payment method with OVO e-wallet<br> * NETWORK_PAY_PG_GOPAY - Payment method with GoPay e-wallet<br> * NETWORK_PAY_PG_LINKAJA - Payment method with LinkAja e-wallet<br> * NETWORK_PAY_PG_CARD - Payment method with Card<br> * NETWORK_PAY_PC_INDOMARET - Payment method with Indomaret<br> * NETWORK_PAY_PG_QRIS - Payment method with QRIS<br> * VIRTUAL_ACCOUNT_BCA - Payment method with BCA virtual account<br> * VIRTUAL_ACCOUNT_BNI - Payment method with BNI virtual account<br> * VIRTUAL_ACCOUNT_MANDIRI - Payment method with Mandiri virtual account<br> * VIRTUAL_ACCOUNT_BRI - Payment method with BRI virtual account<br> * VIRTUAL_ACCOUNT_BTPN - Payment method with BTPN virtual account<br> * VIRTUAL_ACCOUNT_CIMB - Payment method with CIMB virtual account<br> * VIRTUAL_ACCOUNT_PERMATA - Payment method with Permata virtual account<br> * VIRTUAL_ACCOUNT_PANI - Payment method with Panin virtual account<br> ")
51
51
  pay_amount: Optional[Money] = Field(default=None, description="Pay amount. Contains two sub-fields:<br> 1. Value: Transaction amount, including the cents<br> 2. Currency: Currency code based on ISO<br> ")
52
52
  trans_amount: Optional[Money] = Field(default=None, description="Trans amount. Contains two sub-fields:<br> 1. Value: Transaction amount, including the cents<br> 2. Currency: Currency code based on ISO<br> ")
53
53
  charge_amount: Optional[Money] = Field(default=None, description="Charge amount. Contains two sub-fields:<br> 1. Value: Transaction amount, including the cents<br> 2. Currency: Currency code based on ISO<br> ")
@@ -69,8 +69,8 @@ class PayOptionInfo(BaseModel, BaseSdkModel):
69
69
  if value is None:
70
70
  return value
71
71
 
72
- if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN']):
73
- raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANIN')")
72
+ if value not in set(['NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI']):
73
+ raise ValueError("must be one of enum values ('NETWORK_PAY_PG_SPAY', 'NETWORK_PAY_PG_OVO', 'NETWORK_PAY_PG_GOPAY', 'NETWORK_PAY_PG_LINKAJA', 'NETWORK_PAY_PG_CARD', 'NETWORK_PAY_PC_INDOMARET', 'NETWORK_PAY_PG_QRIS', 'VIRTUAL_ACCOUNT_BCA', 'VIRTUAL_ACCOUNT_BNI', 'VIRTUAL_ACCOUNT_MANDIRI', 'VIRTUAL_ACCOUNT_BRI', 'VIRTUAL_ACCOUNT_BTPN', 'VIRTUAL_ACCOUNT_CIMB', 'VIRTUAL_ACCOUNT_PERMATA', 'VIRTUAL_ACCOUNT_PANI')")
74
74
  return value
75
75
 
76
76
  model_config = ConfigDict(
@@ -71,9 +71,9 @@ class Util:
71
71
 
72
72
  # Set base URL based on environment and mode
73
73
  if mode == Mode.DEEPLINK:
74
- base_url = 'https://m.sandbox.dana.id/n/link/binding' if env == 'sandbox' else 'https://link.dana.id/bindSnap'
74
+ base_url = 'https://link.dana.id/bindSnap' if env.lower() == 'production' else 'https://m.sandbox.dana.id/n/link/binding'
75
75
  elif mode == Mode.API:
76
- base_url = 'https://m.sandbox.dana.id/n/ipg/oauth' if env == 'sandbox' else 'https://m.dana.id/n/ipg/oauth'
76
+ base_url = 'https://m.dana.id/n/ipg/oauth' if env.lower() == 'production' else 'https://m.sandbox.dana.id/n/ipg/oauth'
77
77
 
78
78
  # Get partner ID from environment
79
79
  partner_id = os.environ.get('X_PARTNER_ID')
@@ -0,0 +1,109 @@
1
+ Metadata-Version: 2.4
2
+ Name: dana-python
3
+ Version: 1.1.7
4
+ Summary: API Client (SDK) for DANA APIs based on https://dashboard.dana.id/api-docs
5
+ Author-email: DANA Package Manager <package-manager@dana.id>
6
+ Maintainer-email: DANA Package Manager <package-manager@dana.id>
7
+ License-Expression: Apache-2.0
8
+ Project-URL: homepage, https://dashboard.dana.id/api-docs
9
+ Project-URL: repository, https://github.com/dana-id/dana-python
10
+ Keywords: DANA,DANA ID Docs,DANA SDK,DANA Python,DANA API Client,DANA Python API Client,DANA Python SDK
11
+ Requires-Python: >3.9.1
12
+ Description-Content-Type: text/markdown
13
+ License-File: LICENSE
14
+ Requires-Dist: annotated-types==0.7.0
15
+ Requires-Dist: cffi==1.17.1
16
+ Requires-Dist: cryptography<46.0.0,>=44.0.2
17
+ Requires-Dist: pycparser==2.22
18
+ Requires-Dist: pydantic<3.0.0,>=2.10.6
19
+ Requires-Dist: pydantic-core<3.0.0,>=2.27.2
20
+ Requires-Dist: python-dateutil==2.9.0.post0
21
+ Requires-Dist: six==1.17.0
22
+ Requires-Dist: typing-extensions<5.0.0,>=4.12.2
23
+ Requires-Dist: urllib3<3.0.0,>=2.3.0
24
+ Dynamic: license-file
25
+
26
+ # dana-python
27
+ The official DANA Python SDK provides a simple and convenient way to call DANA's REST API in applications written in Python (based on https://dashboard.dana.id/api-docs-v2/)
28
+
29
+ ## ⚠️ Run This First - Save Days of Debugging
30
+
31
+ Before writing any integration code, **run our automated test suite**. It takes **under 2 minutes** and shows you how the full flow works — **with your own credentials**.
32
+
33
+ Here is the link: https://github.com/dana-id/uat-script.
34
+
35
+ ### Why This Matters
36
+
37
+ - 🧪 Validates your setup instantly
38
+ - 👀 **See exactly how each scenario flows**
39
+ - 🧾 Gives us logs to help you faster
40
+ - 🚫 Skipping this = guaranteed delays
41
+
42
+
43
+ ### What It Does
44
+
45
+ ✅ Runs full scenario checks for DANA Sandbox
46
+
47
+ ✅ Installs and executes automatically
48
+
49
+ ✅ Shows real-time results in your terminal
50
+
51
+ ✅ Runs in a safe, simulation-only environment
52
+
53
+ > Don't fly blind. Run the test first. See the flow. Build with confidence.
54
+
55
+
56
+ .
57
+
58
+ .
59
+
60
+
61
+ # Getting Started
62
+
63
+ ## Requirements.
64
+
65
+ Python 3.9.1+
66
+
67
+ ## Installation & Usage
68
+ ### pip install
69
+
70
+ If the python package is hosted on a repository, you can install directly using:
71
+
72
+ ```sh
73
+ pip install dana-python
74
+ ```
75
+
76
+ (you may need to run `pip` with root permission: `sudo pip install dana-python`)
77
+
78
+ Then import the package, ex:
79
+ ```python
80
+ import dana.payment_gateway.v1
81
+ ```
82
+
83
+ ## Environment Variables
84
+
85
+ Before using the SDK, please make sure to set the following environment variables (In .env):
86
+
87
+ | Name | Description | Example Value |
88
+ | ---------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
89
+ | `ENV` or `DANA_ENV` | Defines which environment the SDK will use. Possible values: `SANDBOX` or `PRODUCTION`. | `SANDBOX` |
90
+ | `X_PARTNER_ID` | Unique identifier for partner, provided by DANA, also known as `clientId`. | 1970010100000000000000 |
91
+ | `PRIVATE_KEY` | Your private key string. | `-----BEGIN PRIVATE KEY-----MIIBVgIBADANBg...LsvTqw==-----END PRIVATE KEY-----` |
92
+ | `PRIVATE_KEY_PATH` | Path to your private key file. If both are set, `PRIVATE_KEY_PATH` is used. | /path/to/your_private_key.pem |
93
+ | `DANA_PUBLIC_KEY` | DANA public key string for parsing webhook. | `-----BEGIN PUBLIC KEY-----MIIBIjANBgkq...Do/QIDAQAB-----END PUBLIC KEY-----` |
94
+ | `DANA_PUBLIC_KEY_PATH` | Path to DANA public key file for parsing webhook. If both set, `DANA_PUBLIC_KEY_PATH is used. | /path/to/dana_public_key.pem |
95
+ | `ORIGIN` | Origin domain. | https://yourdomain.com |
96
+ | `CLIENT_SECRET` | Assigned client secret during registration. Must be set for DisbursementApi | your_client_secret |
97
+
98
+ You can see these variables in .env.example, fill it, and change the file name to .env (remove the .example extension)
99
+
100
+ Then you can choose these following APIs based on the business solution you want to integrate:
101
+
102
+ ## Documentation for API Endpoints
103
+
104
+ API | Description
105
+ ------------- | -------------
106
+ [**PaymentGatewayApi**](docs/payment_gateway/v1/PaymentGatewayApi.md) | API for doing operations in DANA Payment Gateway (Gapura)
107
+ [**WidgetApi**](docs/widget/v1/WidgetApi.md) | API for enabling the user to make payment from merchant’s platform with redirecting to DANA’s platform
108
+ [**DisbursementApi**](docs/disbursement/v1/DisbursementApi.md) | API for doing operations in DANA Disbursement
109
+ [**MerchantManagementApi**](docs/merchant_management/v1/MerchantManagementApi.md) | API for doing operations in DANA Merchant Management
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "dana-python"
3
- version = "1.1.5"
3
+ version = "1.1.7"
4
4
  readme = "README.md"
5
5
  description = "API Client (SDK) for DANA APIs based on https://dashboard.dana.id/api-docs"
6
6
  license = "Apache-2.0"
@@ -1,60 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: dana-python
3
- Version: 1.1.5
4
- Summary: API Client (SDK) for DANA APIs based on https://dashboard.dana.id/api-docs
5
- Author-email: DANA Package Manager <package-manager@dana.id>
6
- Maintainer-email: DANA Package Manager <package-manager@dana.id>
7
- License-Expression: Apache-2.0
8
- Project-URL: homepage, https://dashboard.dana.id/api-docs
9
- Project-URL: repository, https://github.com/dana-id/dana-python
10
- Keywords: DANA,DANA ID Docs,DANA SDK,DANA Python,DANA API Client,DANA Python API Client,DANA Python SDK
11
- Requires-Python: >3.9.1
12
- Description-Content-Type: text/markdown
13
- License-File: LICENSE
14
- Requires-Dist: annotated-types==0.7.0
15
- Requires-Dist: cffi==1.17.1
16
- Requires-Dist: cryptography<46.0.0,>=44.0.2
17
- Requires-Dist: pycparser==2.22
18
- Requires-Dist: pydantic<3.0.0,>=2.10.6
19
- Requires-Dist: pydantic-core<3.0.0,>=2.27.2
20
- Requires-Dist: python-dateutil==2.9.0.post0
21
- Requires-Dist: six==1.17.0
22
- Requires-Dist: typing-extensions<5.0.0,>=4.12.2
23
- Requires-Dist: urllib3<3.0.0,>=2.3.0
24
- Dynamic: license-file
25
-
26
- # dana-python
27
- SDK for DANA API (https://dashboard.dana.id/api-docs)
28
-
29
- ## Requirements.
30
-
31
- Python 3.9.1+
32
-
33
- ## Installation & Usage
34
- ### pip install
35
-
36
- If the python package is hosted on a repository, you can install directly using:
37
-
38
- ```sh
39
- pip install dana-python
40
- ```
41
-
42
- (you may need to run `pip` with root permission: `sudo pip install dana-python`)
43
-
44
- Then import the package, ex:
45
- ```python
46
- import dana.payment_gateway.v1
47
- ```
48
-
49
- ## Getting Started
50
-
51
- Please follow the [installation procedure](#installation--usage) and then go to documentation per API you wanna use:
52
-
53
- ## Documentation for API Endpoints
54
-
55
- API | Description
56
- ------------- | -------------
57
- [**PaymentGatewayApi**](docs/payment_gateway/v1/PaymentGatewayApi.md) | API for doing operations in DANA Payment Gateway (Gapura)
58
- [**WidgetApi**](docs/widget/v1/WidgetApi.md) | API for enabling the user to make payment from merchant’s platform with redirecting to DANA’s platform
59
- [**DisbursementApi**](docs/disbursement/v1/DisbursementApi.md) | API for doing operations in DANA Disbursement
60
- [**MerchantManagementApi**](docs/merchant_management/v1/MerchantManagementApi.md) | API for doing operations in DANA Merchant Management
@@ -1,35 +0,0 @@
1
- # dana-python
2
- SDK for DANA API (https://dashboard.dana.id/api-docs)
3
-
4
- ## Requirements.
5
-
6
- Python 3.9.1+
7
-
8
- ## Installation & Usage
9
- ### pip install
10
-
11
- If the python package is hosted on a repository, you can install directly using:
12
-
13
- ```sh
14
- pip install dana-python
15
- ```
16
-
17
- (you may need to run `pip` with root permission: `sudo pip install dana-python`)
18
-
19
- Then import the package, ex:
20
- ```python
21
- import dana.payment_gateway.v1
22
- ```
23
-
24
- ## Getting Started
25
-
26
- Please follow the [installation procedure](#installation--usage) and then go to documentation per API you wanna use:
27
-
28
- ## Documentation for API Endpoints
29
-
30
- API | Description
31
- ------------- | -------------
32
- [**PaymentGatewayApi**](docs/payment_gateway/v1/PaymentGatewayApi.md) | API for doing operations in DANA Payment Gateway (Gapura)
33
- [**WidgetApi**](docs/widget/v1/WidgetApi.md) | API for enabling the user to make payment from merchant’s platform with redirecting to DANA’s platform
34
- [**DisbursementApi**](docs/disbursement/v1/DisbursementApi.md) | API for doing operations in DANA Disbursement
35
- [**MerchantManagementApi**](docs/merchant_management/v1/MerchantManagementApi.md) | API for doing operations in DANA Merchant Management
@@ -1,60 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: dana-python
3
- Version: 1.1.5
4
- Summary: API Client (SDK) for DANA APIs based on https://dashboard.dana.id/api-docs
5
- Author-email: DANA Package Manager <package-manager@dana.id>
6
- Maintainer-email: DANA Package Manager <package-manager@dana.id>
7
- License-Expression: Apache-2.0
8
- Project-URL: homepage, https://dashboard.dana.id/api-docs
9
- Project-URL: repository, https://github.com/dana-id/dana-python
10
- Keywords: DANA,DANA ID Docs,DANA SDK,DANA Python,DANA API Client,DANA Python API Client,DANA Python SDK
11
- Requires-Python: >3.9.1
12
- Description-Content-Type: text/markdown
13
- License-File: LICENSE
14
- Requires-Dist: annotated-types==0.7.0
15
- Requires-Dist: cffi==1.17.1
16
- Requires-Dist: cryptography<46.0.0,>=44.0.2
17
- Requires-Dist: pycparser==2.22
18
- Requires-Dist: pydantic<3.0.0,>=2.10.6
19
- Requires-Dist: pydantic-core<3.0.0,>=2.27.2
20
- Requires-Dist: python-dateutil==2.9.0.post0
21
- Requires-Dist: six==1.17.0
22
- Requires-Dist: typing-extensions<5.0.0,>=4.12.2
23
- Requires-Dist: urllib3<3.0.0,>=2.3.0
24
- Dynamic: license-file
25
-
26
- # dana-python
27
- SDK for DANA API (https://dashboard.dana.id/api-docs)
28
-
29
- ## Requirements.
30
-
31
- Python 3.9.1+
32
-
33
- ## Installation & Usage
34
- ### pip install
35
-
36
- If the python package is hosted on a repository, you can install directly using:
37
-
38
- ```sh
39
- pip install dana-python
40
- ```
41
-
42
- (you may need to run `pip` with root permission: `sudo pip install dana-python`)
43
-
44
- Then import the package, ex:
45
- ```python
46
- import dana.payment_gateway.v1
47
- ```
48
-
49
- ## Getting Started
50
-
51
- Please follow the [installation procedure](#installation--usage) and then go to documentation per API you wanna use:
52
-
53
- ## Documentation for API Endpoints
54
-
55
- API | Description
56
- ------------- | -------------
57
- [**PaymentGatewayApi**](docs/payment_gateway/v1/PaymentGatewayApi.md) | API for doing operations in DANA Payment Gateway (Gapura)
58
- [**WidgetApi**](docs/widget/v1/WidgetApi.md) | API for enabling the user to make payment from merchant’s platform with redirecting to DANA’s platform
59
- [**DisbursementApi**](docs/disbursement/v1/DisbursementApi.md) | API for doing operations in DANA Disbursement
60
- [**MerchantManagementApi**](docs/merchant_management/v1/MerchantManagementApi.md) | API for doing operations in DANA Merchant Management
File without changes