Closed

Delphi app to manage orders on Shopify using the API (JSON)

This project received 5 bids from talented freelancers with an average bid price of $15 AUD / hour.

Get free quotes for a project like this
Employer working
Project Budget
$2 - $8 AUD / hour
Total Bids
5
Project Description

This will be a desktop application, built in Delphi, that will use the Shopify API (which is JSON based) to fetch orders from a Shopify account, and display them effectively, so that later we can manipulate those orders.

This would probably involve creating a class called 'TOrder' (with all the important fields defined), OR a TClientDataSet (with all the important order fields), OR both?.

Orders will then be displayed visually in a grid.

We need to have control (at design time is OK) over which fields are displayed and how the orders are filtered and sorted.

* If the project is successful, there should be more work on this project in the future.

* You are required to release all of the source code and files (i.e. you do not just supply the .exe)

* You do not have to know Shopify to do this. However you will definitely need to be familiar with JSON or XML.

* The shopify API documentation is here:

[url removed, login to view]

Here is an example of how the API works.

The URL format is this:

https://apikey:password[at]hostname/admin/[url removed, login to view]

So for example if we call:

https://xxxxxxxxxxxxx2ebd304083f0exxxxxxx:/admin/[url removed, login to view],

it will return all the orders.

Here is just an example of the JSON response, with just 1 order:

{

"orders":

[

{

"buyer_accepts_marketing":false,

"cancel_reason":null,

"cancelled_at":null,

"cart_token":"xxx",

"checkout_token":"xxxx",

"confirmed":true,

"created_at":"2014-02-12T20:45:21+11:00",

"currency":"AUD",

"email":"",

"financial_status":"paid",

"fulfillment_status":null,

"gateway":"paypal",

"id":23203xxxx,

"location_id":null,

"name":"#4xxx0",

"note":"",

"number":2xx,

"reference":null,

"referring_site":"",

"subtotal_price":"[url removed, login to view]",

"taxes_included":false,

"test":false,

"token":"6a304bf8db68968xxxxxx761d2ae2725",

"total_discounts":"[url removed, login to view]",

"total_line_items_price":"[url removed, login to view]",

"total_price":"[url removed, login to view]",

"total_price_usd":"[url removed, login to view]",

"total_tax":"[url removed, login to view]",

"total_weight":2000,

"browser_ip":"[url removed, login to view]",

"landing_site_ref":null,

"order_number":1290,

"discount_codes":

[

]

,

"note_attributes":

[

]

,

"processing_method":"express",

"checkout_id":204187401,

"source_name":"web",

"tax_lines":

[

{

"price":"[url removed, login to view]",

"rate":0.1,

"title":"GST"

}

]

,

"line_items":

[

{

"fulfillment_service":"manual",

"fulfillment_status":null,

"grams":1000,

"id":41057xxxx,

"price":"[url removed, login to view]",

"product_id":20xxxx021,

"quantity":2,

"requires_shipping":true,

"sku":null,

"title":"xxxxxxxtional Bxxxxxg",

"variant_id":4616xxx65,

"variant_title":"1kg",

"vendor":"xxxxxxx xxxxx",

"name":"xxxxxxxxxxxxxxxxxxxxx - 1kg",

"variant_inventory_management":null,

"properties":

[

{

"name":"Moistness",

"value":"xxxxxxxxs"

}

,

{

"name":"Sliced",

"value":"Whole"

}

]

,

"product_exists":true

}

]

,

"shipping_lines":

[

{

"code":"Shipping & Handling",

"price":"[url removed, login to view]",

"source":"shopify",

"title":"Shipping & Handling"

}

]

,

"billing_address":

{

"address1":"8 xxx e",

"address2":"",

"phone":"xxx-xxx-2769",

"zip":"318x",

"name":"lxxx xxxxer",

"country_code":"AU",

"province_code":"VIC"

}

,

"fulfillments":

[

]

}

Skills Required

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online