Skip to content

MoneroRequest is an easy way to decode/encode monero-request codes.

License

Notifications You must be signed in to change notification settings

lukeprofits/monerorequest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 

Repository files navigation

MoneroRequest

Version 1.0 Python 3.8+

MoneroRequest is an easy way to create/decode Monero Payment Requests.

How To Use:

  • Install this package: pip install monerorequest
  • Import it at the top of your project: import monerorequest
  • Use: monerorequest.make_monero_payment_request()
  • Or use: monerorequest.decode_monero_payment_request()

Example Usage:

  • To create a Monero Payment Request:
monero_payment_request = monerorequest.make_monero_payment_request(custom_label='Unlabeled Monero Payment Request', sellers_wallet='4At3X5rvVypTofgmueN9s9QtrzdRe5BueFrskAZi17BoYbhzysozzoMFB6zWnTKdGC6AxEAbEE5czFR3hbEEJbsm4hCeX2S', currency='USD', amount='25.99', payment_id='', start_date='', days_per_billing_cycle=30, number_of_payments=1, change_indicator_url='')
  • To decode a Monero Payment Request:
monero_payment_request_data = monerorequest.decode_monero_payment_request(monero_payment_request='monero-request:1:H4sIAAAAAAAC/y1QyU7DMBD9lcrntkriOFVyS0uKBCqCLlB6sex40kQkdvECJIh/xymc5i0z8zTzjVinnLQoQxGZpymaorJm8gy0kaIpmVWaOt16e3Sc1iDL3rPD7uYqGKs62jIOY8tBXhGIyUZJ0GryyPoOpJ1s4d2BsX5CsN7QC2jKm7Zt5JmWfdkCynAwRdJ13Duqope/OYMyL/8T2ggfEbCqSpKI45CEkESxX2mgbUEb+sl8HQ+Jc4uPRH8895e9qs6dg4fUpE9WD2ILZOlgrc1bfmrCxVK98nrojRoGtVkvk+FF7u/F7SrJv4qcFwUph/UW1x7dcdPF9QqO0W6MtExbKpiF8W9BhGdhMIuSfRBnhGR4MY9jfEI/vzFHmeFdAQAA')

Example Monero Payment Request:

  • A Monero Payment Request looks like this: monero-request:1:H4sIAAAAAAAC/y1QXVPCMBD8K0yegWmbftC+FQRndHAUiiIvmTS50o5pgkmqto7/3RR9ut3b29u5+0a0VZ20KENBNE9TNEWspvIMpJG8YdQqTTotnDwqndYgWe/YYX9zbRirWiJoCePIQV4R8MlWSdBq8kj7FqSd7OC9A2Odg9PekAtoUjZCNPJMWM8EoAx7UyS7tnSKqsjlz2dQ5k/RPyENdxF+sAjjsEpwxfwkwcytNCAEaEM+qavjIWFu8THSH8/9pVDVue3gITXpk9UD30G07GCjzVt+avxkqV7LeuiNGga13Szj4UUW9/x2Fedf67xcryM2bHa4duiuNG1Yr+AY7MdIS7UlnFoY/+YFeOZ7syAuvCjDi8xP5zEOT+jnF8JbIrJdAQAA

  • When decoded, it is a dictionary with this information: {'amount': '25.99', 'change_indicator_url': '', 'currency': 'USD', 'custom_label': 'Unlabeled Monero Payment Request', 'days_per_billing_cycle': 30, 'number_of_payments': 0, 'payment_id': '0aff662b3151e624', 'sellers_wallet': '4At3X5rvVypTofgmueN9s9QtrzdRe5BueFrskAZi17BoYbhzysozzoMFB6zWnTKdGC6AxEAbEE5czFR3hbEEJbsm4hCeX2S', 'start_date': '2023-10-26T04:55:37.443Z'}

Defaults For make_monero_payment_request()

  • If payment_id is left blank, a random one will be generated. (If you do not want to use a payment_id, set payment_id to 0000000000000000.)
  • If start_date is left blank, the current time will be used.
  • If custom_label is left blank, it will be set to Unlabeled Monero Payment Request
  • If days_per_billing_cycle is left blank, it will be set to 30
  • If number_of_payments is left blank, it will be set to 1
  • If version is left blank, the latest version will be used.

Supplemental Functions:

  • Generate a random payment_id: monerorequest.make_random_payment_id()
  • Create an RFC3339 timestamp for start_date from a datetime object: monerorequest.convert_datetime_object_to_truncated_RFC3339_timestamp_format(datetime_object)
  • Print the Monero logo to console: monerorequest.print_monero_logo()

Donate

  • XMR: 4At3X5rvVypTofgmueN9s9QtrzdRe5BueFrskAZi17BoYbhzysozzoMFB6zWnTKdGC6AxEAbEE5czFR3hbEEJbsm4hCeX2S
  • BTC: 1ACCQMwHYUkA1v449DvQ9t6dm3yv1enN87
  • Cash App: $LukeProfits
Buy Me A Coffee

Requirements

License

MIT

About

MoneroRequest is an easy way to decode/encode monero-request codes.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages