Invoice Receipt¶
In general all aprameters to ask_api are filled according to InvoiceXpress API docs. But there are some simplifications.
invoice-receipts.create¶
Api docs: https://invoicexpress.com/api/invoice-receipt
Example:
result = ask_api('invoice-receipts.create', {
'date': '01/01/2014',
'due_date': '01/02/2014',
'client' : {
'name' : 'Ricardo Pereira',
'code' : 100,
},
'items' : { 'item' : [
{
'name' : 'Product 1',
'description' : "Cleaning product",
'unit_price': 12.0,
'quantity' : 2.0,
},
{
'name' : 'Product 2',
'description' : "Beauty product",
'unit_price': 123.0,
'quantity' : 1.0,
},
]},
})
#print some fields
print 'ID:', result['id']
print 'Link:', result['permalink']
invoice-receipts.get¶
Api docs: https://invoicexpress.com/api/invoice-receipt/get
Example:
receipt = ask_api('invoice-receipts.get', {
'invoice-receipt-id' : your_id
})
# print fields
print receipt['permalink']
invoice-receipts.update¶
Api docs: https://invoicexpress.com/api/invoice-receipt/update
Example:
# suggest you get receipt as above
# now we will change client
ask_api('invoice-receipts.update', {
'invoice-receipt-id': receipt['id'],
'due_date': receipt['due_date'],
'date': receipt['date'],
'client' : {
'name' : 'Ricardo Ferrera',
'code' : '122'
},
'items' : receipt['items']
})
invoice-receipts.list¶
Api docs: https://invoicexpress.com/api/invoice-receipt/list
Example:
result = ask_api('invoice-receipts.list', {
'per_page': 7,
'page' : 1
})
print "Current page:" , result['current_page']
for r in result['invoice_receipt']:
print (
'Id: {} Client: {}'.format (r['id'],r['client']['name'])
)
invoice-receipts.change-state¶
Api docs: https://invoicexpress.com/api/invoice-receipt/change-state
Note: Bug in API docs, you must write finalized instead settled
Example:
# make finalize
result = ask_api('invoice-receipts.change-state', {
'invoice-receipt-id': receipt['id'],
'state': 'finalized',
})
print result
invoice-receipts.email-document¶
Api docs: https://invoicexpress.com/api/invoice-receipt/email
Note: Вody is Plain text
Example:
result = ask_api('invoice-receipts.email-document', {
'invoice-receipt-id': your_receipt['id'],
'client': {
'email': 'example@mail.pt',
'save': 0,
},
'subject' : 'The Html Letter',
'body' : 'Will be printed as <b> Plain </b> text'
})
# result is OK, so nothing to print
invoice-receipts.pdf¶
Api docs: https://invoicexpress.com/api/invoice-receipt/documents-pdf
Example:
# we have to wait for pdf generating
while True:
result = ask_api('invoice-receipts.pdf',{
'invoice-receipt-id': my_id,
})
if (result != 202) : break
print result['pdfUrl']