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.8.tar.gz (67.0 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.8-py3-none-any.whl (184.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: phonepe_pg_sdk_python-2.1.8.tar.gz
  • Upload date:
  • Size: 67.0 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.8.tar.gz
Algorithm Hash digest
SHA256 471709c3d741ffb39260a0ac7cd3323972b5ff1bf872abc0511ce505b240feb2
MD5 fc8e3caf8171727d8a9b45ecd3f83bc7
BLAKE2b-256 8a3fdf09a55b7aebe41819234833d718248d337d903e42ec3a326065c651c4da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for phonepe_pg_sdk_python-2.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 1f85915b5236c4c897222b45098067bb1dfcf18d111706aed8ef8c9c3dcd9438
MD5 81271b168466ab4479a6e4b72c1bae8d
BLAKE2b-256 9170966e220bdb9730fe9590ba2f5831d274652a2fdeefd9bfe31e10faab5038

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