Skip to main content

SDK for integration with PhonePe PG APIs

Project description

PhonePe B2B PG SDK

A python library for integrating with PhonePe APIs.

Installation

Requires python 3.9 or later

pip install --index-url https://phonepe.mycloudrepo.io/public/repositories/phonepe-pg-sdk-python  --extra-index-url https://pypi.org/simple phonepe_sdk

Quick start

To get your keys, please visit the Merchant Onboarding of PhonePe PG: Merchant Onboarding You will need three things to get started: client-id, client-secret and client-version.

Create an instance of the StandardCheckoutClient class:

from phonepe.sdk.pg.payments.v2.standard_checkout_client import StandardCheckoutClient
from phonepe.sdk.pg.env import Env

client_id = "<YOUR_CLIENT_ID>"
client_secret = "<YOUR_CLIENT_SECRET>"
client_version = 1  # Insert your client version here
env = Env.SANDBOX  # Change to Env.PRODUCTION when you go live

standard_phonepe_client = StandardCheckoutClient.get_instance(client_id=client_id,
                                                              client_secret=client_secret,
                                                              client_version=client_version,
                                                              env=env)

Initiate an order using Checkout Page

To init a pay request, we make a request object using StandardCheckoutPayRequest.build_request build_request.

Code:
from uuid import uuid4
from phonepe.sdk.pg.payments.v2.models.request.standard_checkout_pay_request import StandardCheckoutPayRequest

unique_order_id = str(uuid4())
ui_redirect_url = "https://www.merchant.com/redirect"
amount = 100
standard_pay_request = StandardCheckoutPayRequest.build_request(merchant_order_id=unique_order_id,
                                                                amount=amount,
                                                                redirect_url=ui_redirect_url)
standard_pay_response = standard_phonepe_client.pay(standard_pay_request)
checkout_page_url = standard_pay_response.redirect_url

The data will be in a StandardCheckoutPayResponse object. The checkout_page_url you get can be handled by redirecting the user to that url on the front end.

Check status of order

View the state for the order we just initiated.

unique_order_id = "INSERT_YOUR_UNIQUE_ORDER_ID"  
order_status_response = standard_phonepe_client.get_order_status(merchant_order_id=unique_order_id)  
order_state = order_status_response.state

You will get the data OrderStatusResponse object.

For more details, please visit: https://developer.phonepe.com

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

phonepe_pg_sdk_python-2.1.7.tar.gz (64.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phonepe_pg_sdk_python-2.1.7-py3-none-any.whl (180.3 kB view details)

Uploaded Python 3

File details

Details for the file phonepe_pg_sdk_python-2.1.7.tar.gz.

File metadata

  • Download URL: phonepe_pg_sdk_python-2.1.7.tar.gz
  • Upload date:
  • Size: 64.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for phonepe_pg_sdk_python-2.1.7.tar.gz
Algorithm Hash digest
SHA256 1a5f38199e274fc70235c7a57b035ad45e84b008845777065f6a511244281aa2
MD5 75e3d96d06e01f3c18267a4f9d80ea97
BLAKE2b-256 e31496ee1c97da1b5197e4ae19f52dc9cdd75f5b771637b664c181b43f920aaa

See more details on using hashes here.

File details

Details for the file phonepe_pg_sdk_python-2.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for phonepe_pg_sdk_python-2.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 b1eea0ef755d2171a751478bec3ebc806186027d151d8407d5cc5e6283d0a6b0
MD5 065ca18de716ba82736f8aa362e1623d
BLAKE2b-256 2fc664f17182f56940d69a6a75a7ffad6438d73a3a1b84b1a68c1090abc4547b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page