Vipps Python Library
The Unofficial* Vipps Python library provides convenient access to the Vipps AS API from applications written in the Python language.
Currently Supports:
Documentation
See the Vipps Developers resources
Installation
pip install vipps
Requirements
Test on Python3.7
Usage
Vipps eCommerce API version 2. Initiate payment and get redirect Url:
from vipps import VippsEcomApi
payment = VippsEcomApi(
client_id="fb492b5e-7907-4d83-ba20-c7fb60ca35de",
client_secret="Y8Kteew6GE2ZmeycEt6egg==",
vipps_subscription_key="0f14ebcab0ec4b29ae0cb90d91b4a84a",
merchant_serial_number="123456",
vipps_server="https://apitest.vipps.no",
callback_prefix="https://example.com/vipps/callbacks-for-payment-updates"
fall_back="https://example.com/vipps/fallback-order-result-page/acme-shop-123-order123abc"
)
initiate = payment.init_payment(
order_id="acme-shop-123-order123abc",
amount=200,
transaction_text="One pair of Vipps socks",
)
redirect_url = initiate.get("url")
capture = payment.capture_payment(
order_id="acme-shop-123-order123abc",
amount=200,
transaction_text="One pair of Vipps socks",
)
cancel = payment.cancel_payment(
order_id="acme-shop-123-order123abc",
transaction_text="One pair of Vipps socks",
)
refund = payment.refund_payment(
order_id="acme-shop-123-order123abc",
amount=200,
transaction_text="One pair of Vipps socks",
)
details = payment.details_payment(
order_id="acme-shop-123-order123abc"
)
*Unofficial
I am not affiliate or associate of the Vipps AS in any possible way. Used publicly available info to build this software.
Create PyPI package
- Docs:
- Setup:
mkdir /home/vipps-python
cd /home/vipps-python
mkdir vipps
mkdir tests
touch vipps/__init__.py
touch LICENSE
touch README.md
touch pyproject.toml
touch setup.cfg
touch setup.py
nano pyproject.toml
[build-system]
requires = [
"setuptools>=42",
"wheel"
]
build-backend = "setuptools.build_meta"
nano setup.cfg
[metadata]
name = vipps
version = 0.3
author = Almaz Kunpeissov
author_email = hi@akun.dev
description = Python bindings for the Vipps API
long_description = file: README.md
long_description_content_type = text/markdown
url = https://github.com/almazkun/vipps-python
keywords = vipps api payments
license = MIT License
license_files = LICENSE
project_urls =
Documentation = https://github.com/almazkun/vipps-python
Source = https://github.com/almazkun/vipps-python
Tracker = https://github.com/almazkun/vipps-python/issues
classifiers =
Development Status :: 2 - Pre-Alpha
Intended Audience :: Developers
Operating System :: OS Independent
Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: 3.7
Programming Language :: Python :: Implementation :: PyPy
Topic :: Software Development :: Libraries :: Python Modules
[options]
packages = find:
python_requires = >=3.7
include_package_data = true
zip_safe = false
install_requires = requests >= 2
[options.packages.find]
exclude =
tests
tests.*
nano setup.py
from setuptools import setup
setup()
- Creating distribution archives
python3 -m pip install --upgrade build
python3 -m build
- Upload to Test.PyPI:
python3 -m pip install --user --upgrade twine
python3 -m twine upload --repository testpypi dist/*
- username: token, password: your test PyPI token
curl https://test.pypi.org/project/vipps/0.1/
- Installing package:
python3 -m pip install --index-url https://test.pypi.org/simple/ --no-deps vipps
python3
import vipps
- Upload to the PyPI:
python3 -m twine upload dist/*
- username: token, password: your PyPI token