This Python package provides a simple interface to the CashFree APIs. It can be used to create orders, payment links, check the status of transactions, and refund orders etc
Note: Refer to the cashfree api docs for detailed payload instructions, API references, and examples.
To install the package, run the following command:
pip install cashfree
- Initiate Cashfree Object
from cashfree import CashFree
# Instantiate CashFree object for the sandbox environment (TEST)
cashfree_client = CashFree(client_id, client_secret, environment="TEST", api_version='v3')
- Create A Customer Object
from cashfree import CustomerDetails
customer = CustomerDetails(customer_id='CF_7768', customer_phone='7778989987')
- Create A Order Object
from cashfree import CashFreeOrder
order = CashFreeOrder(order_id='your-order-id', order_amount=120.3)
- Create an order payment session
# You can pass the order & customer object inside create_order method
order = cashfree_client.create_order(order, customer)
payment_session_id = order.get('payment_session_id')
- Get Payment Details Of A Single Order
order_details = cashfree_client.get_payment_details('your_order_id')
- Webhook Signature validation
# Get The raw Payload data
raw_payload = request.get_data(as_text=True)
timestamp = request.headers.get('x-webhook-timestamp')
received_signature = request.headers.get('x-webhook-signature')
is_valid_webhook = cashfree_client.validate_webhook_signature(raw_payload, timestamp, received_signature)
Contributions are always welcome! If you find any issues or have suggestions, please open an issue or create a pull request on GitHub.
This project is licensed under the MIT License
For api related support please contact support@cashfree.com.
Pending Feature:
- Easy Split Module
- Payouts Module
- Cashgram Module
- Verification Suite