API Development Resources

About Avenue APIs

Resource for developers.

Avenue APIs help you integrate ecommerce applications more efficiently with Pronto Xi. Avenue provides an integrated, single platform data extract and transfer process that is fully compatible with supported Pronto Xi versions.

The Avenue APIs are a set of web APIs that define a set of http request messages, along with a definition of the structure of response messages, which are in the form of JSON or XML. The Avenue APIs provide you with the ability to manage your eCommerce stores by providing calls for working with resources such as customers, categories, products, and sales orders. It also allows you to manage shopping carts and inventory. In addition to the core Avenue APIs, you can define custom resources and manage them through the APIs.

With Avenue APIs you can:
  • post transactional data such as web sales orders to Pronto Xi and receive order confirmation
  • send individual or bulk data requests to Pronto Xi to query information such as multi warehouse inventory quantities, product companion items, pricing,customer order history and so on

Avenue Diagram

Avenue uses a suite of APIs, including the eCommerce set, to allow developers to build custom applications such as eCommerce websites which rely on product information and order transactions within Pronto Xi.

The API calls are http-based and are available online, so web transactions can continue if Pronto Xi is unavailable. Transaction data is seamlessly synchronised between the cloud and Pronto Xi within two minutes.

Both B2B and B2C are supported as Avenue's inbuilt pricing engine stays fully synchronised with Pronto Xi.

  • Single platform so custom interfaces are required
  • There is no need for specialist Pronto Xi developer knowledge or licences
  • B2B and B2C supported as Avenue pricing stays in step with Pronto Xi pricing
  • Synchronised ecommerce data access is available by individual record or in bulk
  • It uses authenticated http-based API calls (Pronto Web Services standard) so there is no reliance on Pronto Xi availability
  • Synchronisation times between Avenue and Pronto Xi is typically two minutes
  • It is always compatible with supported Pronto Xi versions

Here's a sample of what you can do the Avenue APIs:

  • Import product information from Pronto Xi

    You can use the Product API to import and store selected product information from Pronto Xi such as warehouse inventory levels and specific product data. For more information about the API see product.get.

    Product Query

  • query product availability
  • Create sales orders

    You can use the Order API to create sales orders in Pronto Xi. For more information about the API see order.post.

    Sales Order

  • Query order submission status

    Once you post information to Avenue, you can use the Transaction API to request order information, including order status, any order submission errors or warning. When when the transaction is received by Pronto Xi, the result information is provided. In the case of order submission, this will include a URL containing the order number.
    For more information about the API see transaction.get.

    Transaction Response

  • Retrieve orders from Pronto Xi

    You can use the Order API order.get to retrieve order details from Pronto Xi. For more information about the API see order.get.

    Sales Order Get

  • Integrate a third-party shopping cart or eCommerce application
  • Query product categories
  • Query debtors

Using the Pronto Avenue APIs, developers don't need to be 4GL or Pronto Xi specialists to work with and access the Pronto Xi data and business logic.

Avenue is hosted by Pronto Software and the APIs are written, installed, and supported by Pronto Software so there is no need for developers to create custom, unsupported interfaces or to obtain additional licences to develop their applications.

Before you start

Resource for developers.

This guide provides 'out of the box' standard Avenue API features however it cannot cater for all possible requirements of our customers. We hope, nevertheless, that this guide will stimulate ideas for extending or enhancing your Pronto Xi implementation, and we strongly encourage you to seek professional advice regarding your specific business needs.

You will need to perform a few setups in Avenue before you can start using the Avenue APIs.

Before you can work with Pronto Avenue APIs you must first create a user role, or modify an existing user role that allows API access. Once you have done this, then you can assign yourself and other users to the role.

  1. In the Avenue console, click User Roles.
  2. The User Roles screen is displayed.

  3. Click on the user role Code to edit the role or click New User Role to add a new role.
  4. The User Role Editor is displayed.

  5. Select theapi_access permission.
  6. Click Save.

    Now you can assign users to the role.

  7. In the Avenue console, click Users.
  8. The Users screen is displayed.

  9. Click on the user role Email Address to edit the user details.
  10. The Editing User screen is displayed.

  11. In the User Role box, select the role with the api_access permission.
  12. Click Save.

Pronto Xi will typically have a cash or casual debtor set up. You can use this in Avenue to display pricing, availability and so on for B2C users.

In order for this to work you must set up Avenue to recognise the debtor code that is to be used for this purpose.

  1. In the Avenue console, click Site Settings.
  2. The Site Settings screen is displayed.

  3. Scroll down to the Casual Users box.
  4. Click Add Debtor.
  5. Enter the appropriate customer code in the Account Code (for example, CASH or CASUAL).

    Once you start typing, you can select from the displayed Pronto Xi database matches.

  6. Enter a Description.
  7. Scroll down to the bottom of the screen and click Save.

Avenue APIs

The following APIs are available:

Name Code Version Method Url
Product product v4 GET /api/(FORMAT)/product/v4
Transaction transaction v4 GET /api/(FORMAT)/transaction/v4
Order order v4 GET /api/(FORMAT)/order/v4
Category category v4 GET /api/(FORMAT)/category/v4
Debtor debtor v4 GET /api/(FORMAT)/debtor/v4
Order order v4 POST /api/(FORMAT)/order/v4