Mouhamedtec / python-slick-pay-package

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Slick-pay

Logo

Description

Python package for Slick-Pay Transfer API implementation.

Prerequisites

  • Python 3
  • requests~=2.27.0
  • python-dotenv~=0.21.1

Installation

Just run this command line :

  pip install slick-pay==0.3

Configuration

In order to use our API, you will need to :

1. Create an account

Visite our website and create an account. If you are merchant you have to add your satim information like username and password

2. Get api's key

After logging in, from your dashboard, you will able to get your PUBLIC_KEY.

3. Configure API Client

from slickpay import slickPayApi

env = "dev"
api_client = slickPayApi()
api_client.config(environment=env, public_key="PUBLIC_KEY")

4. Configure through environment variables

Create a .env file and inside your .env file create a variable like this:

  public_key= your_public_key

Import environment variables

import os
from dotenv import load_dotenv
load_dotenv()

from slickpay import slickPayApi

env = "prod"
api_client = slickPayApi()
api_client.config(environment=env, public_key=os.environ["public_key"])

How to use?

Concerning merchant account

InvoiceTransferMerchant

Create Invoice

from slickpay import InvoiceTransferMerchant
    invoiceMerchant = InvoiceTransferMerchant(client=api_client)
    data = 
    {
        'amount': 10000,
        'name': "Lorem Ipsum",
        'phone': "000000000",
        'address': "Lorem Ipsum Address",
        'url': "https://my-website.com/thank-you-page",
        'items': [
            {
                "name": "Seller product",
                "price": 5000,
                "quantity": 2
            }
        ]
    }
    res = invoiceMerchant.createInvoice(data)
    return res

Invoice Details

    res = invoiceMerchant.invoiceDetail(id)
    return res

List Invoice

    res = invoiceMerchant.listInvoice(offset,  page)
    return res

Update Invoice

    res = invoiceMerchant.updateInvoice(id, data)
    return res

Delete Invoice

    res = invoiceMerchant.deleteInvoice(id, data)
    return res

Concerning User account:

Account

Create

from slickpay import Account
    userAccount = Account(client=api_client)
    data = {
        "title"    : "Lorem Ipsum",
        "lastname" : "Lorem",
        "firstname": "Ipsum",
        "address"  : "Lorem Ipsum Address",
        "rib"      : "12345678912345678900"
    }
    res = userAccount.create(data)
    return res

Account Details

    res = userAccount.accountDetails(id)
    return res

Account list

    res = userAccount.list(offset, page)
    return res

Account update

    res = userAccount.update(id, data)
    return res

Account delete

    res = userAccount.delete(id)
    return res

Contact

Create Contact

from slickpay import Contact
    userContact = Contact(client=api_client)
    data = {
        "title"    : "Lorem Ipsum",
        "lastname" : "Lorem",
        "firstname": "Ipsum",
        "email"    : "lorem@ipsum.com",
        "address"  : "Lorem Ipsum Address",
        "rib"      : "12345678912345678900"
    }
    res = userContact.createContact(data)
    return res

Contact detail

    res = userContact.contactDetail(id)
    return res

Contact list

    res = userContact.listContact(offset, page)
    return res

Contact update

    res = userContact.updateContact(id, data)
    return res

Contact delete

    res = userContact.deleteContact(id)
    return res

Transfer

Calculate Commission

from slickpay import Transfer
    userTransfer = Transfer(client=api_client)
    res=userTransfer.calculateCommission(amount)
    return res

Create Transfer

     data = {
        'amount' : 1000,
        'uuid'   : "37990d08-fc51-4c32-ad40-1552d13c00d1",
        'url'    : "https://my-website.com/thank-you-page",
    }
    res = userTransfer.createPayment(data)
    return res

Transfer detail

    res = userTransfer.paymentDetail(id)
    return res

Transfer list

    res = userTransfer.listTransfer(offset, page)
    return res

Transfer update

    res = userTransfer.updateTransfer(id, data)
    return res

Transfer delete

    res = userTransfer.deleteTransfer(id)
    return res

PaymentAggregation

Calculate Commission

from slickpay import PaymentAggregation
    userPaymentAggregation = PaymentAggregation(client=api_client)
    data = {
        "type": "percentage",
        "total": 10000,
        "contacts": [
            {
                "uuid": "864efcd3-9fef-4da5-67ec-bc28fd7e719b",
                "amount": 50
            },
            {
                "uuid": "f23bde3f-aac9-4dfc-7e06-5bf02e7f5967",
                "amount": 50
            }
        ]
    }
    res=userPaymentAggregation.commission(data)
    return res

Create PaymentAggregation

     data = {
        "url"     : "https://my-website.com/thank-you-page",
        "type"    : "percentage",
        "total"   : 10000,
        "contacts": [
            {
                "uuid": "864efcd3-9fef-4da5-67ec-bc28fd7e719b",
                "amount": 50
            },
            {
                "uuid": "f23bde3f-aac9-4dfc-7e06-5bf02e7f5967",
                "amount": 50
            }
        ]
    }
    res = userPaymentAggregation.create(data)
    return res

PaymentAggregation detail

    res = userPaymentAggregation.details(id)
    return res

PaymentAggregation list

    res = userPaymentAggregation.list(offset, page)
    return res

PaymentAggregation update

    data = {
        "url"     : "https://my-website.com/thank-you-page",
        "type"    : "percentage",
        "total"   : 20000,
        "contacts": [
            {
                "uuid": "864efcd3-9fef-4da5-67ec-bc28fd7e719b",
                "amount": 50
            },
            {
                "uuid": "f23bde3f-aac9-4dfc-7e06-5bf02e7f5967",
                "amount": 50
            }
        ]
    }
    res = userPaymentAggregation.update(id, data)
    return res

PaymentAggregation delete

    res = userPaymentAggregation.delete(id)
    return res

InvoiceTransfer

Calculate Commission

from slickpay import InvoiceTransfer
    userInvoiceTransfer = InvoiceTransfer(client=api_client)
    res=userInvoiceTransfer.calculateCommissionInvoice(amount)
    return res

Create InvoiceTransfer

    data = {
        'amount' : 10000,
        'uuid'   : "37990d08-fc51-4c32-ad40-1552d13c00d1",
        'url'    : "https://my-website.com/thank-you-page",
        'items'  : [
            {
                "name": "Seller product",
                "price": 5000,
                "quantity": 2
            }
        ]
    }
    res = userInvoiceTransfer.createInvoice(data)
    return res

InvoiceTransfer detail

    res = userInvoiceTransfer.InvoiceDetail(id)
    return res

InvoiceTransfer list

    res = userInvoiceTransfer.listInvoice(offset, page)
    return res

InvoiceTransfer update

    data = {
        'amount' : 1000,
        'uuid'   : "37990d08-fc51-4c32-ad40-1552d13c00d1",
        'url'    : "https://my-website.com/thank-you-page",
    }
    res = userInvoiceTransfer.updateInvoice(id, data)
    return res

InvoiceTransfer delete

    res = userInvoiceTransfer.deleteInvoice(id)
    return res

More help

About

License:MIT License


Languages

Language:Python 100.0%