Jump to content

Steel, Mark

Moderators
  • Posts

    480
  • Joined

  • Last visited

  • Days Won

    35

Everything posted by Steel, Mark

  1. Thanks Andrew, The Sage Business Cloud Accounting product is a great cost effective solution. At present this is available in three tiers, Start, Accounting and Accounting Plus. The Start tier is the cheapest and at a high level is missing functionality such as credit notes, Suppliers and products. The Accounting tier is a happy medium. The API's for this product our publicly available and documented at https://developer.sage.com/accounting/. We also provide links to create trial versions of the product should you wish to test out the available functionality or develop your product against SBCA. https://developer.sage.com/accounting/quick-start/set-up-the-basics/. Trial accounts can be extended for integrators who are actively working with our API's using the form located here. Thanks Mark
  2. Hi Andrew, Which Sage products are you wishing to integrate your SaaS product with please? Thanks Mark
  3. Hi Patrick, Could you send me a direct message with your client_id and either the business_id or the email address of the business returning the 422 error response. Could you also provide me with the registered location of the business please. There's no problem using a due_date which is the same as that of the invoice date. The only rule with a due_date is that it is not earlier than the invoice_date. Thanks Mark
  4. Hi thanks for your question. The ID's given to products and services are GUID's. By there very nature they should never be the same. Thanks Mark
  5. Hi Patrick, To clarify, you have suppliers who are raising sales invoices on your behalf using a prefix associated with themselves and then sending you both the sales_invoice and their supplier/vendor purchase_invoice? Your idea of removing the invoice_number AND prefix should resolve the 422 you're seeing. In order to keep a level of traceability you'll need to ideally add the suppliers sales_invoice in the reference field of the sales_invoice you're posting or if this is in use for another purpose you could add details of the transaction in the notes field. If the reference was used, a user of SBCA would then be able to filter the invoice list for those relating to the supplier by editing the configurable columns and selecting the reference field as per the images. Let me know if i've missed the mark with the requirements here. Thanks Mark
  6. Hi Patrick, Thank you for your question. The API reference generated from the swagger is something we're hoping to improve over the coming months. Ideally the changes will provide a greater insight about the individual parameters. The prefix would generally be setup by the business who is using your integration through the UI's settings > business settings > Document preferences and would not be passed in the sales_invoice POST request. I've attached an image for your information. The idea is that you create an invoice and the invoice will be created with the prefix in the settings. Are you needing to change the prefix on a regular basis? API access to this setting is available in the invoice_settings API. Thanks Mark
  7. Hi Nathan, Thank you for your question. From the URL's you've referenced, this looks to be relative to Sage 200. Support for this product is currently via [email protected] Thanks Mark
  8. Hi Stephen, Thank you for your question. Have you been able to follow the auth flow in Postman? If you let us know the language you're using and provide the method in a code snippet we can have a look. If you do post the snippet, please make sure you hide any client_id and client_secret. Thanks Mark
  9. Thanks for clarifying, You'll need to reach out to the North American developer services team [email protected]. They'll be able to provide information on any available API. Thanks Mark
  10. Hi Brien, Thank you for your post. Which Sage product is this question in reference to? Thanks Mark
  11. Hi Pieter, Thank you for your interest in developing for Sage products. The first place to start is with the Sage products you wish to support. From the information you provide a good starting point maybe our Sage Business Cloud Accounting product which has an API that will support your intended scope. The docs for the API can be found here along with a quick start guide. Within the quick start guide you will be able to find links to signup for a trial copy of the software which we can then extend for the lifetime of your development/testing. It's important to note that not all tiers of the product have the ability to create quotes/estimates. Thanks Mark
  12. Hi Kieran, Thanks for raising this. The API gateway will timeout after 28 seconds waiting for a response from the backend. Looking at your request, you are asking for all attributes to be returned for a list of 200 products. If you can let us know what you require from the request we maybe able to suggest params that are more efficient. The other option is to reduce the page number you are requesting. Try changing this to 100 to start with. Thanks Mark
  13. Hi Stathis, thank you for your question. It looks as if the quantity issue you are seeing is also related to the tier selected for your trial account. The screen shot you've provided appears to be that of the Start tier which does not support unit quantity on item lines as per the image. If you need to test this you'll need to create another trial for a tier with greater functionality such as Accounting or Accounting plus. https://developer.sage.com/accounting/quick-start/set-up-the-basics/ Thanks Mark
  14. Hi Deniz, Thank you for your question. The developer community supports the needs and questions of our 3rd party integrators. A feature request in this community would be seen as a change for the API's. If the feature request is product related, you'll need to make your post in Sage City. Thanks Mark
  15. Hi Bartłomiej, Thank you for your question. At present there are no alternative means of authenticating an application with Sage Business Cloud Accounting. Was there a specific use case that you had in mind that would require a different implementation of the oAuth flow? Thanks Mark
  16. Hi Dean, thank you for your question. The documentation you refer to is for Sage Business Cloud Accounting available in CA, ES, FR, IRE, UK and US. There are other countries where a product called Sage Business Cloud Accounting exists but these only share the name and not the codebase. South Africa is an example of this. Looking at the Australian product pages for Sage.com/en-au/ I cannot see Sage Business Cloud Accounting listed as an available product. Is it this Sage product you are developing for?
  17. Thanks for sharing your solution and good luck with your project.
  18. You'll need to resolve the data parsing error and revert to your original code and pass the body params as they were.
  19. Thanks for the update Stuart, that is odd behaviour, I would expect the parameters to have been ignored and the response returned as you're now seeing it. The doc's could definitely do with updating around swagger.
  20. Hi Stuart, Are you able to provide the response body please(please mask any data that may be traceable to the business)? The standard response for a GET request to sales_invoices/id should include the contact _id without requesting the nested_attributes. The below is taken from a response to sales_invoices/id. "contact": { "id": "e861ddf68bdd4bf3950c8084cd9ec13d", "displayed_as": "Bronson Inc (BRO001)", "$path": "/contacts/e861ddf68bdd4bf3950c8084cd9ec13d" },
  21. Thanks for your feedback Kieth. The ability to obtain attributes from an index request is also feasible in the other API's. For example you may wish to obtain attributes relating to a transaction such as date, reference and total amount. transactions?attributes=date,reference,total Thanks Mark
  22. Thanks for the update. Can you confirm, what callback url's do you have registered in Developer Self Service? Is the callback url "http://localhost:8084/getionparcGlpi/connexion" registered there? and also, how you are obtaining the code to exchange in the request? Thanks Mark
  23. Hi Alain, thank you for your question. I don't believe there are members of the North American team who frequent this forum. If you don't get a response here you can send an email to [email protected]. Please let us know if you don't receive a response. Thanks Mark
  24. What does the request look like in the Postman console? Below is an example nodejs method used to exchange the code for tokens. You can see it uses the qs parsing library to stringify the request parameters before passing the request via axios. If you're confident the code has not expired by the time you're making the request in your method try parsing the body parameters in a similar way to the below. Thanks Mark const exchange_code = async(code)=>{ //The qs library is required to stringify the data for url encoding var data = qs.stringify({ client_id: String(process.env.client_id), client_secret: String(process.env.client_secret), code: code, grant_type: 'authorization_code', redirect_uri: String(config.callback_url), }); var cfg = { method: 'post', url: String(config.access_token_url), headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Accept': 'application/json' }, data : data } try { //Pass the config to axios and make the post request const resdata = await axios(cfg) var credentials = resdata.data;
  25. Hi, thank you for your question. Could you confirm that you are successfully obtaining the code returned to your callback URL and then make the request to the token endpoint before the code expires? In the example you provide the code looks to be static? Could you share the method you're using for the authorization request as per https://developer.sage.com/accounting/guides/authenticating/authentication/ please. Thanks Mark
×
×
  • Create New...