payments.hrl 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. -include("kvs.hrl").
  2. -type payment_state() :: added | done | cancelled | pending | untracked |
  3. failed | unknown | confirmed | discarded.
  4. -type payment_type():: credit_card | mobile | paypal | wire_transfer | facebook.
  5. -record(state_change, {
  6. time :: erlang:now(),
  7. state :: any(),
  8. info :: any()}).
  9. -record(payment, {?ITERATOR(user_payment),
  10. % id :: any(),
  11. external_id :: any(), % id of the purchase in external payment system if any
  12. user_id :: any(),
  13. payment_type :: payment_type(),
  14. state :: payment_state(),
  15. membership,
  16. product,
  17. % next :: any(),
  18. % prev :: any(),
  19. start_time :: erlang:now(),
  20. end_time :: erlang:now(),
  21. state_log = [] :: [#state_change{}],
  22. info :: any() }).
  23. -record(user_payment, {?CONTAINER,
  24. user :: any()
  25. % top :: any()
  26. }).
  27. -define(MP_STATE_ADDED, added).
  28. -define(MP_STATE_DONE, done).
  29. -define(MP_STATE_CANCELLED, cancelled).
  30. -define(MP_STATE_UNTRACKED, untracked).
  31. -define(MP_STATE_PENDING, pending).
  32. -define(MP_STATE_FAILED, failed).
  33. -define(MP_STATE_UNKNOWN, unknown).
  34. -define(MP_STATE_CONFIRMED, confirmed).
  35. -define(MP_STATE_UNEXPECTED, unexpected).
  36. -define(MP_STATE_DISCARDED, discarded).
  37. -define(MP_MONTHLY_LIMIT_MULTIPLIER, 3).
  38. -record(pi_credit_card, {
  39. cardholder_name,
  40. cardholder_surname,
  41. cardnumber_masked,
  42. retref_num,
  43. prov_date,
  44. auth_code
  45. }).