python-flipkart 0.2.0

Creator: railscoderz

Last updated:

Add to Cart

Description:

pythonflipkart 0.2.0

Python Flipkart Marketplace API Client

Free software: BSD license
Documentation: https://python-flipkart.readthedocs.org.


Installing
From PYPI:
$ pip install python-flipkart
From source code (advanced users and for development):
$ git clone https://github.com/fulfilio/python-flipkart.git
$ cd python-flipkart
$ python setup.py install


Example Usage
from flipkart import FlipkartAPI, Authentication

auth = Authentication('app id', 'app secret', sandbox=True)
token = auth.get_token_from_client_credentials()

flipkart = FlipkartAPI(token['access_token'], sandbox=True, debug=True)
orders = flipkart.search_orders()

Get listings of a SKU
sku = flipkart.sku('my-special-sku', fsn='TSHDBN3326TEZHQZ')
for listing in sku.listings:
print listing.attributes['mrp']


Create a listing
sku = flipkart.sku('my-special-sku', fsn='TSHDBN3326TEZHQZ')
listing = sku.create_listing(
mrp=2400,
selling_price=2300,
listing_status="INACTIVE",
fulfilled_by="seller",
national_shipping_charge=20,
zonal_shipping_charge=20,
local_shipping_charge=20,
procurement_sla=3,
stock_count=23,
)
listing.save()
print listing.mrp


Update a listing
listing = flipkart.listing('LSTTSHDBN332XDYBZ5MHX30XI')
listing.attributes['mrp'] = 2600
listing.save()


Searching for orders
orders = flipkart.search_orders()
Find only orders of selected SKUs:
orders = flipkart.search_orders(
filters={'sku': ['my-sku-1', 'my-sku-2']}
)
Filter by state:
orders = flipkart.search_orders(
filters={'states': ['Approved']}
)

Tip
For a list of valid state see API documentation



Fetching a specific order item
order_item = flipkart.order_item('1731')
order_item.attributes['quantity']
Or to get several order items at once
order_items = flipkart.order_items('1731', '1732')
Once the order is ready to pack, generate a label
label_request = order_item.generate_label(
date.today(), # Invoice date
'INV12345', # Invoice number
)
When there are items that need serial numbers
label_request = order_item.generate_label(
date.today(), # Invoice date
'INV12345', # Invoice number
[['IMEI1']],
)
If the item was dual sim
label_request = order_item.generate_label(
date.today(), # Invoice date
'INV12345', # Invoice number
[['IMEI1', 'IMEI2']],
)
If 2 units of dual sim mobiles
label_request = order_item.generate_label(
date.today(), # Invoice date
'INV12345', # Invoice number
[['IMEI1', 'IMEI2'], ['IMEI3', 'IMEI4']],
)
The response of generate_label is a Label Request. The label request
is a lazy API. The status can be refreshed by calling
label_request.refresh_status()
Once the status is cleared, the item can be shipped out. To get the label
to ship call the get_label method to get a PDF of the label and
possibly the invoice.
pdf = order_item.get_label()
Once your shipment is ready to be picked by Flipkart logistics partner,
call the ready to dispatch API.
order_item.dispatch()


Getting shipment details
The Shipments API gives the shipping details for orderitems
order_item.get_shipment_details()
the response items can be seen on Flipkart API documentation


Getting Access Token
If you have registered an application with your seller credentials and
would like to access resources in your account, you could use the
application id and secret alone to do so. The authentication helper in the
API gives you a convenient way to get tokens
from auth import Authentication

auth = Authentication(
'<application id>',
'<application secret>',
sandbox=True, # If you are using sandbox
)
auth.get_token_from_client_credentials()



Features

TODO



History

0.2.0

Major update with complete Order Item API
Added examples to the README



0.1.2

Make version numbers consistent.



0.1.1

Renamed package to python-flipkart.

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.