Python SDK for CrystalPay.io payment system
Project description
CrystalPayAPI - Python SDK для CrystalPay
Русская документация
Оглавление
Установка
pip install CrystalPayAPI
Быстрый старт
from crystalpayapi import CrystalPayAPI, InvoiceType, PayoffSubtractFrom
# Инициализация
cp = CrystalPayAPI("Ваш_логин", "Secret_1", "Secret_2")
# Создание инвойса
invoice = cp.create_invoice(
amount=100.0,
invoice_type=InvoiceType.PURCHASE,
lifetime=15,
description="Оплата товара"
)
# Проверка статуса
invoice_info = cp.get_invoice(invoice["id"])
Инициализация
from crystalpayapi import CrystalPayAPI, InvoiceType, PayoffSubtractFrom
# Основной конструктор
cp = CrystalPayAPI(
auth_login="Ваш_логин", # Логин кассы
auth_secret="Secret_1", # Секретный ключ 1
salt="Secret_2", # Секретный ключ 2
base_url="https://api.crystalpay.io/v2/" # Опционально
)
Методы работы
Информация о кассе
# Получение информации о кассе
account_info = cp.get_me()
"""
{
"id": "12345",
"name": "Моя касса",
"status_level": 2,
"created_at": "2023-01-01 00:00:00"
}
"""
# Получение баланса
balance = cp.get_balance(hide_empty=True)
"""
{
"RUB": {"amount": 1000, "currency": "RUB"},
"BTC": {"amount": 0.05, "currency": "BTC"}
}
"""
Платежи
# Создание платежа
invoice = cp.create_invoice(
amount=500,
invoice_type=InvoiceType.PURCHASE,
lifetime=30, # в минутах
description="Оплата заказа #123",
redirect_url="https://your-site.com/thanks"
)
"""
{
"id": "inv_123",
"url": "https://pay.crystalpay.io/?i=inv_123",
"amount": 500,
"type": "purchase"
}
"""
# Проверка статуса
status = cp.get_invoice("inv_123")
"""
{
"id": "inv_123",
"state": "paid",
"amount": 500,
"created_at": "2023-01-01 12:00:00"
}
"""
Вывод средств
# Создание вывода
payoff = cp.create_payoff(
amount=0.01,
method="BTC",
wallet="1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
subtract_from=PayoffSubtractFrom.BALANCE
)
Курсы валют
# Получение курсов
rates = cp.get_exchange_rates(["BTC", "ETH"])
"""
{
"BTC": {"price": 2500000},
"ETH": {"price": 150000}
}
"""
Обработка ошибок
from crystalpayapi import CrystalPayAPIError
try:
cp.create_invoice(amount=100, ...)
except CrystalPayAPIError as e:
print(f"Ошибка API: {e}")
English Documentation
Table of Contents
Installation
pip install CrystalPayAPI
Quick Start
from crystalpayapi import CrystalPayAPI, InvoiceType, PayoffSubtractFrom
# Initialize client
cp = CrystalPayAPI("your_login", "secret1", "secret2")
# Create invoice
invoice = cp.create_invoice(
amount=100.0,
invoice_type=InvoiceType.PURCHASE,
lifetime=15,
description="Product payment"
)
# Check status
invoice_info = cp.get_invoice(invoice["id"])
Initialization
from crystalpayapi import CrystalPayAPI, InvoiceType, PayoffSubtractFrom
cp = CrystalPayAPI(
auth_login="your_login",
auth_secret="secret_1",
salt="secret_2",
base_url="https://api.crystalpay.io/v2/" # Optional
)
Methods
Account Info
# Get merchant info
account_info = cp.get_me()
# Get balances
balance = cp.get_balance(hide_empty=True)
Payments
# Create invoice
invoice = cp.create_invoice(
amount=100,
invoice_type=InvoiceType.PURCHASE,
lifetime=15,
description="Order #123"
)
# Check status
status = cp.get_invoice(invoice["id"])
Withdrawals
# Create withdrawal
payoff = cp.create_payoff(
amount=0.1,
method="BTC",
wallet="3FZbgi29cpjq2GjdwV8eyHuJJnkLtktZc5",
subtract_from=PayoffSubtractFrom.BALANCE
)
Exchange Rates
# Get rates
rates = cp.get_exchange_rates(["BTC", "USDT"])
Error Handling
try:
cp.create_payoff(...)
except CrystalPayAPIError as e:
print(f"API Error: {e}")
License
MIT License. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
crystalpayapi-1.2.0.tar.gz
(6.4 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 crystalpayapi-1.2.0.tar.gz.
File metadata
- Download URL: crystalpayapi-1.2.0.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
38d559a710d96490393071d92b4f3c5815f6bfd973f81ae8d0bf341240d9d0fb
|
|
| MD5 |
ab3fdfd3fb5a6b91054f0684b3a50b7a
|
|
| BLAKE2b-256 |
bedb8e0230bac8071059aa75da6977c9d963c4763abc68fa6ab2a9a1f0f0a986
|
File details
Details for the file crystalpayapi-1.2.0-py3-none-any.whl.
File metadata
- Download URL: crystalpayapi-1.2.0-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
644f51ac24d2f9d34cf5f1553837181c393a45202a236bf0907c67b6e20fd17a
|
|
| MD5 |
ad7d80389c5fd129ae29440da0ef885f
|
|
| BLAKE2b-256 |
1ad1ee1afe57e2d14abb5c48e7cf5037d7917b8801ded76febad46c1db074e87
|