Safepay's python SDK for checkout integration
Project description
Safepay Python SDK
Official python library for Safepay API.
Installation
With Pip
pip install safepay-python
Usage
Import and create a Safepay client by passing your config;
from safepay_python.safepay import *
env = Safepay(
{
"environment": "sandbox",
"apiKey": "sec_asd12-2342s-1231s",
"v1Secret": "bar",
"webhookSecret": "foo",
}
)
You can now create payments and checkout links.
Payments
Create payment
| Parameter | Type | Required |
|---|---|---|
amount |
number |
Yes |
currency |
PKR, USD |
Yes |
payment_response = env.set_payment_details({"amount": 10000, "currency": "PKR"})
token = (payment_response['data'])['token']
# Pass `token` to create checkout link
Checkout
Create checkout link
| Parameter | Type | Description | Required |
|---|---|---|---|
token |
string |
Token from env.set_payment_details |
Yes |
orderId |
string |
Your internal invoice / order id | No |
cancelUrl |
string |
Url to redirect to if user cancels the flow | Yes |
redirectUrl |
string |
Url to redirect to if user completes the flow | Yes |
source |
string |
Optional, defaults to custom |
No |
webhooks |
boolean |
Optional, defaults to false |
No |
checkout_url = env.get_checkout_url(
{
"beacon": token,
"cancelUrl": "http://example.com/cancel",
"orderId": "T800",
"redirectUrl": "http://example.com/success",
"source": "custom",
"webhooks": True,
}
)
# set webhooks = True if want to subscribe to webhooks
# redirect user to `url`
Verification
Signature
| Parameter | Type | Description | Required |
|---|---|---|---|
sig |
string |
The signature string from your server |
Yes |
tracker |
string |
The tracker string from your server |
Yes |
signature_verification = env.is_signature_valid({"sig": "abcd", "tracker": token})
# mark the invoice as paid if valid
# show an error if invalid
Webhook
| Parameter | Type | Description | Required |
|---|---|---|---|
x-sfpy-signature |
string |
The signature string from your server |
Yes |
data |
object |
The data object from your server |
Yes |
webhook_verification = env.is_webhook_valid(
{"x-sfpy-signature": "abcd"}, {"data": data}
)
# mark the invoice as paid if valid
# show an error if invalid
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
safepay_python-0.0.6.tar.gz
(4.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file safepay_python-0.0.6.tar.gz.
File metadata
- Download URL: safepay_python-0.0.6.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da9450e3a6d7b373b3a58f5c390280447cb77e728bc5e75eedc07d32c0d0cd21
|
|
| MD5 |
b989e4cc4422c3afdb012227f448e1c6
|
|
| BLAKE2b-256 |
c6350b19ed6d3389c87fe73690753cc850a86109b0cb2e800b859bf47f0f5193
|
File details
Details for the file safepay_python-0.0.6-py3-none-any.whl.
File metadata
- Download URL: safepay_python-0.0.6-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
94f60be0fb2b7c8368892f1d97860a621aa7a4ea3f2a3c65d3c2adff1b8ed9bf
|
|
| MD5 |
0353ddfdb655f5ab45aa314e3ce3af62
|
|
| BLAKE2b-256 |
f26ea1bdb754605781ac8001204c7e9c3976715d75efe58ccd7a6f89261c7932
|