Skip to main content

killbill client

Project description

python-killbill-client

Guide

Frist step create client

from killbill import KillBillClient

killbill = KillBillClient("admin", "password")

Table of contents :

Tenant

Create a tenant

killbill.tenant.create(api_key="bob", api_secret="lazar", created_by="demo")

And use api_key and api_secret to create header

from killbill import Header

header = Header(api_key="bob", api_secret="lazar", created_by="demo")

Catalog

Create a simple catalog

from killbill.enums import ProductCategory, BillingPeriod, TrialTimeUnit

killbill.catalog.add_simple_plan(
    header=header, # pass header
    plan_id="standard-monthly",
    product_name="Standard",
    product_category=ProductCategory.BASE,
    currency="USD",
    amount=24.95,
    billing_period=BillingPeriod.MONTHLY,
    trial_length=0,
    trial_time_unit=TrialTimeUnit.UNLIMITED,
)

Create a catalog from file

# first get text content
xml_file = open("SpyCarBasic.xml", "r", encoding="utf-8").read()

killbill.catalog.create(header=header, catalog_xml=xml_file)

Account

Create account

# return account id
account_id = killbill.account.create(
    header=header,
    name="Customer 1",
    first_name_length=10,
)

List accounts

import json

accounts = killbill.account.list(header=header)

print(json.dumps(accounts, indent=4))

Add a payment method to the account

Note: Replace 3d52ce98-104e-4cfe-af7d-732f9a264a9a below with the ID of your account.

killbill.account.add_payment_method(
    header=header,
    account_id="3d52ce98-104e-4cfe-af7d-732f9a264a9a",
    plugin_name="__EXTERNAL_PAYMENT__",
    is_default=True,
)

Subscription

Set Up a Subscription for the Account

Note: Replace 3d52ce98-104e-4cfe-af7d-732f9a264a9a below with the ID of your account.

subscription_id = killbill.subscription.create(
    header=header,
    account_id="3d52ce98-104e-4cfe-af7d-732f9a264a9a",
    plan_name="standard-monthly",
)

Invoices

Retrieve account invoices

Note: Replace 3d52ce98-104e-4cfe-af7d-732f9a264a9a below with the ID of your account.

invoices = killbill.account.invoices(
    header=header, account_id="3d52ce98-104e-4cfe-af7d-732f9a264a9a"
)

print(json.dumps(invoices, indent=4))

Overdue

Retrieve overdue config

overdue_config = killbill.overdue.retrieve(header=header)

print(overdue_config)

Upload overdue config

# first get text content
overdue_config_xml = open("Overdue.xml", "r", encoding="utf-8").read()

killbill.overdue.upload(header=header, overdue_config_xml=overdue_config_xml)

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

python_killbill_client-0.0.6.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_killbill_client-0.0.6-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file python_killbill_client-0.0.6.tar.gz.

File metadata

  • Download URL: python_killbill_client-0.0.6.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for python_killbill_client-0.0.6.tar.gz
Algorithm Hash digest
SHA256 2c457b5d282034015652b0057e04233caaff08dc6f30c8408512d02c9c250c01
MD5 cfb4d3c96e3df77d21941d48797f42c1
BLAKE2b-256 c05bff9e5db95781bde7054bf71bc77f7ad498b8e9bffa8ca35abdeb835fd683

See more details on using hashes here.

File details

Details for the file python_killbill_client-0.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for python_killbill_client-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c899f33992f1cb319dffb2be31b102c94f9b74c69a4ec8db8b322d2256df26d0
MD5 1b96ede52f3a4fa1bf520a40163a591c
BLAKE2b-256 27ad836dc948106720a5628751a30f8889086b9d3316c2eb11e55e233c192b38

See more details on using hashes here.

Supported by

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