Jump to content

Steel, Mark

Moderators
  • Posts

    480
  • Joined

  • Last visited

  • Days Won

    35

Posts posted by Steel, Mark

  1. Hi Chris

    Apologies for the late response. 

    The API at present does not fully comply with oData specs hence why we try not to reference nested_attributes  in the docs where possible. In this scenario, it may be more efficient to make an additional call to the contacts/id endpoint to obtain those attributes you require.


    Thanks

    Mark

  2. Hi Chris

    The request header x-business is responsible for directing requests to the correct business. They would be choosing the lead business if they did not make a selection. businesses/lead.

    Thanks

    Mark

  3. Hi Chris

    The oAuth flow is a User authorising your app to connect to any business they have access to. They do not have control over the selection of business, this is achieved via the integrating app providing the user with a list of businesses to select from, should more than one business be accessible to them.

    Users are invited to access business data via Settings>User Management>Invite User (see attached).
    Once the user has accepted the invite to access an additional business, they are able to select the business from the top right of the Sage Business Cloud Accounting UI as shown in the attached images.

    Thanks

    Mark 
     

    Invite_User.png

    Business_Selection.png

  4. HI Chris

    Thank you for your question. We have a guide on multi business which may answer some of your questions.

    As you mentioned, it isn't possible to have multiple businesses under a single account (Sage ID) at present. Each business requires a separate account(sage ID) to be registered. This however, does not prevent a user from having access to multiple businesses through invitation.

    Once authenticated the businesses endpoint can be called which in turn will return an array of the businesses together with their individual ID that the authenticated user has access to.

    If you were to call the contacts endpoint the response header will contain the x-business attribute with the id of the business as the value. If you haven't specified the x-business attribute in the request header the request will default to the lead business. 

    Thanks

    Mark 

  5. Hi Chris

    Thank you for your question. As default the GET contacts request filters deleted contacts. You'll need to explicitly request deleted records by passing for example
    ?deleted_since=2021-01-01T00:00:00Z  as a query parameter.



    Thanks
    Mark

    • Like 1
  6. Hi Nick, thank you for your question.

    From the information you've provided it sounds as if your client is using Sage 50 c. This is predominantly a desktop product with cloud integration ability. 
    The API you've attempted to use is for Sage's cloud native product, Sage Business Cloud Accounting.

    There is an SDK for Sage 50c available via the UK Sage Developer Programme. I've included a few useful links below.

    https://www.sage.com/en-gb/partners/independent-software-vendors/

    https://my.sage.co.uk/uk/communities/developers/news.aspx

    https://my.sage.co.uk/forums/

    [email protected] - For Technical Support queries

    Thanks
    Mark

  7. Hi Kelvin, thank you for your question.

    Unfortunately, the analysis codes remain unavailable via the API meaning the ability to filter ledger_accounts as you require is not yet possible.

    With regard an ETA, we've raised the question with the Product Manager of the API and hope to be able to offer a timeline in the near future. We can assure you, that our intentions to provide access to analysis codes is real and is in no way a marketing strategy.

    We'll be in touch soon.

    Regards

    Mark 

  8. Hi Kelvin, thank you for your question.

    Unfortunately, the analysis codes remain unavailable via the API meaning the ability to filter ledger_accounts as you require is not yet possible.

    With regard an ETA, we've raised the question with the Product Manager of the API and hope to be able to offer a timeline in the near future. We can assure you, that our intentions to provide access to analysis codes is real and is in no way a marketing strategy.

    We'll be in touch soon.

    Regards

    Mark 

  9. Hi Chris, thank you for your question.

    At present Sage 50c and the SDO are supported under contract of the UK Sage Developer Programme.
    If you have a current subscription to the UK developer programme you'll be able to download the docs in a chm format to view on your desktop.

    I've listed some links that may be of use below, please note you will need a valid subscription to access developer news and downloads:

    https://www.sage.com/en-gb/partners/independent-software-vendors/

    https://my.sage.co.uk/uk/communities/developers/news.aspx

    https://my.sage.co.uk/forums/

    [email protected] - For Technical Support queries

    Kind regards

    Mark

  10. Hi Robert, thank you for your question.

    The user who is authenticated may be associated with a single or many businesses. The endpoint you are requesting (lead) business, returns the first of those businesses which includes the subscriptions array containing the id's of the products the business is subscribed to.

    In the spring of 2020, an additional subscription tier (Accounting Plus) was offered to UK businesses subscribing to SBC Accounting. This now means, that for UK businesses there are potentially four different subscription id's that may be returned. At present, there is no endpoint available that returns these values.

    START = Accounting Start
    ACCOUNTS = Accounting Standard (Subscription date prior to new tier)
    ACCOUNTING_10 = Accounting Standard (Subscription date after new tier)
    ACCOUNTING = Accounting Plus

    • Like 1
  11. Hi Kathy, thank you for your question.

    Sage Business Cloud Accounting and its API is currently available in 7 regions. Canada, France, Germany, Ireland, Spain, UK and US.

    The SBC Accounting login should be for one of those regions. You'll need to ensure that the region you select during POSTMAN auth matches that of the account you are trying to access.

    Could you confirm the URL in the browser after signing into your account please?

    Thanks

    Mark

  12. Hi, thanks for your question.

    The three product tiers, Sage Business Cloud Accounting Start, Accounting, and Accounting plus relate only to the subscription tiers available in the uk. Information relating to the UK tiers can be found here.

    For all other regions, North America, Canada, France, Germany and Spain, only Sage Business Cloud Accounting Start and Accounting are available. The sales_invoices endpoint is available to all tiers in all regions.

    We'll look into how we can improve the API references to make it easier to follow based on region. Please let us know if you have any further questions.

    Thanks

  13. Hi Reginald, thank you for your question.

    To clarify, are you attempting to exchange a refresh_token for an access_token? If this is correct you need to make a POST request to the token endpoint https://oauth.accounting.sage.com/token with the following attributes:

    
    Content-Type: application/x-www-form-urlencoded
    
    client_id=4b6xxxxxxx710
    &client_secret=iNuxxxxxxxxxxtm9
    &grant_type=refresh_token
    &refresh_token=eyJxxxxxxxxxxYLk


    The Content_Type attribute should be set in the request header and the client_id, client_secret, grant_type and refresh_token set in the request body. I extracted the above from our Auth guide which offers a complete overview of the process.

    Regards

    Mark

  14. Hi both, thank you for your questions.

    We're not aware of any such scenario where iis could potentially block a localhost callback url but, given the many permutations of iis configuration it may be possible to cause a situation where this does occur.

    Did you change the callback url for your registered app in the developer self service?  It's vital that the callback url registered against your app matches that of the localhost address.

    We're looking to improve the examples in the coming months with the aim of providing a more up to date c# guide.
     

    @Stuart Eastland are you able to share your stripped down oAuth code with us please?

    Kind regards

    Mark

  15. Hi Tadej, thank you for your question.

    We're not aware of any issue obtaining access_tokens in exchange for refresh_tokens providing the refresh_tokens are updated every time you exchange and the initial auth has not been revoked.

    If you can provide us with the request id of the failed auth attempt we can take a look at the logs on our server.

    Kind regards

    Mark

  16. Hi Dave

    Yes, adding that detail to the reference would allow it to be seen in the bank rec screen and allow for easier identification.

    Thank you for the feedback around field lengths, we'll raise a request to have this information added to the swagger/open API definitions. For reference the character length for the reference field is 25 chars.

    Regards

    Mark

    • Like 1
  17. Hi Andrew

    I've logged this with our engineering squad with an internal (sage) reference of  AC-5814.

    The issue is only with the UI displaying the VAT breakdown. The Vat amounts that appear on the VAT return are correctly accounted for.

    I'll be in touch as soon as we have an update for you.

    Regards

    Mark

    • Like 1
  18. Thanks for the request info Andrew.

    It looks as if there is a problem with the unit_price_includes_tax attribute and it is seeing the total amount as the net amount. Once the invoice is edited, the net values are re-calculated to show the correct value in the breakdown.

    If you know the tax amount before you send the request, one option would be for you to set the correct net amount, tax_amount and total_amount for the item line and set the unit_price_includes_tax to false. It's not necessary to set the invoice net, tax and total either as it is calculated from the line items.

    I'll log the issue with the unit_price_includes_tax calc and will update you as soon as I know the outcome.

    Regards

    Mark

    • Like 1
  19. Hi Andrew, thank you for your question.

    Do you have the request body you are sending in the sales_invoices POST request please?

    Alternatively, it may be worth comparing GET responses for the invoice before and after the UI edit. Tools such as JSON diff are ideal for pointing out differences in the values.

    Thanks

    Mark

  20. Hi Dave, thank you for your question. 

    In short, you can't view the detail of the individual payment lines in the initial bank screen. The reference is a description of the entire transaction and you would need to drill down on the transaction and view the line details in the transactions itself. You're able to see the detail in the ledger activity as that is the description for the item line. 
    907495579_Screenshot2021-02-09at10_30_52.thumb.png.cb866eba3316b8f3932ffc8b47bb73a2.png
    If we take the following JSON in a POST request to other_payments, the bank UI view would show the reference "transaction header ref" and the ledger activity for the individual ledger accounts would show "Payment Line 1" for the first line and in the activity of the other ledger, it would show "Payment Line 2".

    {
      "other_payment": {
        "transaction_type_id": "OTHER_RECEIPT",
        "payment_method_id": "CREDIT_DEBIT",
        "reference": "transaction header ref",
        "bank_account_id": "8a425d32fe80418abcb24d7f9b434f07",
        "date": "09/02/2021",
        "total_amount": "60.00",
        "payment_lines": [
          {
            "ledger_account_id": "a4262c706a1711ebb8fe0a8b4d715243",
            "total_amount": "30.00",
            "net_amount": "25.00",
            "tax_amount": "5.00",
            "details": "Payment Line 1",
            "tax_rate_id": "GB_STANDARD"
          },
          {
            "ledger_account_id": "a42526cb6a1711ebb8fe0a8b4d715243",
            "total_amount": "30.00",
            "net_amount": "25.00",
            "tax_amount": "5.00",
            "details": "Payment Line 2",
            "tax_rate_id": "GB_STANDARD"
          }
        ]
      }
    }
    

     

    • Like 1
×
×
  • Create New...