{"id":19469713,"url":"https://github.com/niloth-p/payment-gateway","last_synced_at":"2026-05-16T17:06:08.803Z","repository":{"id":39825259,"uuid":"283622474","full_name":"Niloth-p/Payment-Gateway","owner":"Niloth-p","description":null,"archived":false,"fork":false,"pushed_at":"2023-02-08T00:44:51.000Z","size":4997,"stargazers_count":1,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-01-08T05:07:07.667Z","etag":null,"topics":["card","django","payment-gateway","razorpay","razorpay-api","tests"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Niloth-p.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-07-29T23:25:43.000Z","updated_at":"2021-11-28T05:56:57.000Z","dependencies_parsed_at":"2022-08-20T17:50:21.554Z","dependency_job_id":null,"html_url":"https://github.com/Niloth-p/Payment-Gateway","commit_stats":null,"previous_names":["niloth-p/payment-gateway"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niloth-p%2FPayment-Gateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niloth-p%2FPayment-Gateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niloth-p%2FPayment-Gateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Niloth-p%2FPayment-Gateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Niloth-p","download_url":"https://codeload.github.com/Niloth-p/Payment-Gateway/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240683491,"owners_count":19840719,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["card","django","payment-gateway","razorpay","razorpay-api","tests"],"created_at":"2024-11-10T18:53:38.224Z","updated_at":"2025-10-29T16:20:52.297Z","avatar_url":"https://github.com/Niloth-p.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Payment Gateway API\n\nThis is a wrapper integration for the Razorpay API in Python and Django.  \nThe public and secret keys are set for dev and must be newly generated for actual money transactions.  \nThis project uses Razorpay to handle credit and debit card transactions, and stores the payment_details in a local SQL database.\n\n### Razorpay API security abstraction\n\nPayments can be made only through Razorpay's embedded UI in the integrated API for security reasons.  \nPayment details like cvv of a card, etc are abstracted from the vendor i.e this program.  \nTo verify that the details has been transmitted to and back without any modifications, we compare signature generated by our secret key and signature returned by razorpay.  \nHence, a payment cannot be made through an API method call.  \nBut payment details like the amount, card type, transaction time, etc can be fetched after the transaction has been successfully captured by Razorpay.\n\n### Setup Instructions:\n\n(Optional) Create a free profile in razorpayapp.com and generate your own public key and secret key. Replace in index.html, views.py, tests_views.py.  \nCreating an account enables the user to view all the order details and payment details through Razorpay's interactive dashboard.\n\n#### Running the Project Locally\n\nInstall the requirements:  \n`pip install -r requirements.txt`  \nSetup the local configurations:  \n`cp .env.example .env`  \nCreate the database:  \n`python manage.py migrate`  \nRun the tests:  \n`python manage.py test razorpayapp`  \nFinally, run the development server:  \n`python manage.py runserver`  \nThe project will be available at 127.0.0.1:8000/razorpayapp/\n\n### Usage:\n\n(Note) Only works with internet access - since it calls the Razorpay API  \n* Go to 127.0.0.1:8000/razorpayapp/  \n* Click the button  \n* Use the UI to edit the user details  \n* Choose Pay by Card  \n* Skip Saved Cards  \n* Type any one of these card numbers `{4111 1111 1111 1111, 5104 0155 5555 5558, 5104 0600 0000 0008}`  \n* Type any date past the current date as the expiry date  \n* Type any random 3 digits for CVV  \n* Unselect Remember card  \n* Click Pay button  \n* Choose Select/Failure and view both the outputs separately\n\n### Settings Variables\nAMOUNT = 10020  \nPUBLIC_KEY = 'rzp_test_9C0tA32nmQxBfO'  \nSECRET_KEY = 'yiEAgQ2SVO2wko3LIO3qkCal'  \nORDER_ID = 21  \nEnsure settings variables are in sync with the values in index.html template\n\n### Assumptions:\n* No user authentication is required to proceed with the payment  \n* The user enters their card details in Razorpay's embedded UI which pops on the screen when the user clicks on the 'Pay Now' button. We, the merchants cannot see their card details  \n* Only credit card and debit card options has been integrated in this project\n\n### References:\nhttps://razorpay.com/docs/payment-gateway/  \nhttps://razorpay.com/docs/payment-gateway/server-integration/python/\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniloth-p%2Fpayment-gateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fniloth-p%2Fpayment-gateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniloth-p%2Fpayment-gateway/lists"}