Skip to main content

A simple client for the Kapital payment gateway.

Project description

Kapital Payment Gateway Client

kapital is a Python client for the Kapital Bank payment gateway, designed to simplify the process of creating and managing payment orders. This library provides a straightforward interface to interact with the Kapital Bank API, making it easier to integrate payment functionality into your applications.

Features

  • Create payment orders with customizable parameters.
  • Supports basic authentication for secure API access.
  • Handles JSON payloads and responses seamlessly.

Installation

You can install the kapital package via pip. It's recommended to create a virtual environment for your project.

pip install kapital

Usage

Here’s a quick guide on how to use the kapital client.

Importing the Client

from kapital import Kapital

Initializing the Client

To use the client, initialize it with your credentials. If you don't provide any credentials, default values will be used.

client = Kapital(
    base_url="https://e-commerce.kapitalbank.az/api",
    username="your-username",
    password="your-password"
)

Creating a Payment Order

You can create a payment order by calling the create_order method. Here's an example:

response = client.create_order(
    redirect_url="https://your-redirect-url.com",
    amount=100.00,
    description="Payment for Order #123",
    currency="AZN",
    language="az"
)

print(response)

Response Structure

The create_order method returns a dictionary containing the following keys:

  • order_id: The unique identifier for the order.
  • password: The password for the order.
  • hppUrl: The URL for redirecting the user to complete the payment.
  • status: The status of the order.
  • cvv2AuthStatus: The CVV2 authentication status.
  • secret: A secret value associated with the order.
  • redirect_url: The full URL to redirect the user for payment.

Example Response

{
    "order_id": "123456",
    "password": "secret_password",
    "hppUrl": "https://payment-url.com",
    "status": "pending",
    "cvv2AuthStatus": "approved",
    "secret": "order_secret",
    "redirect_url": "https://payment-url.com?id=123456&password=password"
}

Error Handling

The client raises exceptions for various error cases, such as:

  • If the response status code is not 200, an Exception will be raised.
  • If the response format is invalid, a ValueError will be raised indicating the specific issue.
try:
    response = client.create_order(
        redirect_url="https://your-redirect-url.com",
        amount=100.00,
        description="Payment for Order #123"
    )
except Exception as e:
    print(f"An error occurred: {e}")

Contributing

Contributions are welcome! If you have suggestions for improvements or want to report bugs, please open an issue or submit a pull request.

License

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

Authors

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

kapital-0.2.3.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

kapital-0.2.3-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file kapital-0.2.3.tar.gz.

File metadata

  • Download URL: kapital-0.2.3.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for kapital-0.2.3.tar.gz
Algorithm Hash digest
SHA256 4f44be48523a392f3249eaba44a9376452c96d3d747ba1ad40ea91f522852ff1
MD5 8e64d420f368ed22973c025441b0af17
BLAKE2b-256 0dcc8f01497a3e7798a2d023a72efba4029f6646ab566e070892f36baf30dbac

See more details on using hashes here.

File details

Details for the file kapital-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: kapital-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for kapital-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 875a33ad5045ecf279c1df6ae5060eb1ec57ea41f7e4240454a2a1c376362a99
MD5 c6d7f832d04ed71208e1670e3601a721
BLAKE2b-256 f9627e7e797991c81b0d1217a222f06ac90681a4ec0c6bc09bbe328cc46b7ace

See more details on using hashes here.

Supported by

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