Jump to content


About This Club

Join our Sage Intacct Developer Club, where our mission is to help developers succeed by providing quick, reliable community driven support, providing a friendly community, and encouraging the sharing of knowledge. Whether you're a seasoned developer or just starting out, join us to share solutions, experience a supportive community spirit, and make things a little bit easier together!
  1. What's new in this club
  2. You may want to explore creating a custom object with a field to store your external URL and create a relationship to the ARPYMT object on that custom object. You can then import records into this custom object and set the relationship to the ARPYMT object using the RECORDNO of the ARPYMT.
  3. Our OAUTH works with web services users today, you could have an onboarding process where the user authenticates with the web services users once, then securely store the refresh tokens, when your jobs run on a schedule, exchange the refresh token for an access token and execute your job. I know I am simplifying this but this approach would work. There have been many discussions internally about this and we will not be supporting the password grant_type. https://oauth.net/2/grant-types/password/
  4. When you make a token request you can pass this in the query string: "state" and set the value to whatever you want, that value will carry forward to your callback url. $url = AUTH_URL."?" ."state=anything" ."&response_type=code" ."&client_id=". CLIENT_ID ."&scope=". SCOPE ."&redirect_uri=". CALLBACK_URL;
  5. I would advocate allowing localhost for the callback URL in production. If it were allowed to have web services users to be able to get the access tokens without requiring a user to get them, this would be a useful thing. I wrote an MTD module for another Sage accounting system that required OAuth2 and that connected with the UK Government HMRC gateway and that allows localhost in the callback URL. I use this by creating an HTTP Listener on the localhost and waiting for the response back from the HMRC gateway so I can pick up the tokens. Nothing wrong with it. Making a system so secure and locked down to the point that it becomes unusable is a sure-fire way to make people cut corners or find ways around the problems which causes other issues. It's akin to having such complex password requirements that users either write them down on a post-it, or they just have standard password and increment a number which makes a mockery of the security. There is a trade-off to be made.
  6. @Frederick Almond I don't think so, but it would be better if @Sterio, Louis and/or @Manske, Karsten confirmed for sure. Louis/Karsten, please see above question.
  7. Context: We have alot of historical payment in sage, and I want to move copies into our own system. I want to update the ARPayment updating a custom field containing a url to the payment in our own system. I assume the answer is no from this doc 'https://developer.intacct.com/api/accounts-receivable/ar-payments/#update-ar-payment', but maybe theres a two step operation like reverse, then update?
  8. Currently when generating API Client Keys you have to have a non-localhost domain and callback URL. This makes local testing extremely difficult. Auth0 for comparison (as an Oauth2 platform) does allow this for exactly this reason. I do understand that is a security-related measure, so a suggestion does pop to mind: Allow Only for "Implementation"/"Development" type environments. Not having this would have a pretty adverse affect for development teams attempting to integrate using this api.
  9. Not all use cases have a user available to do the authentication. For example: having an Integration platform access the Intacct API on a schedule late at night. This is where the "Client Credentials" OAuth2 authentication flow comes in. So in my opinion this is a major use-case that works with the XML API and is unsupported with the REST API currently. I would expect to do this authentication only using a Web Services user and not a standard user.
  10. I have a customer asking if we can write data to the Entries grid on multiple screens, including Purchase Orders. They want us to fill in the Project cell using the value in the project field, for example. I am wondering if this is possible with a page script or another construct.
  11. Thanks @Preston, Charlie. To be 100% clear, the Sender ID/Password will only ever be used in combination with the user id/password?
  12. @Preston, Charlie our company has actually spoken directly to @Sterio, Louis and Monica Lopez about why a web services user will not work for us. So we are going with a business user. So will two-factor affect API usage at all, or only UI usage?
  13. Never mind, found it: "When the system parses this formula, it creates JavaScript code for each loop or record that the view shows. Processing long lists of records can cause your JavaScript to time out. You can avoid this by tightly filtering the view to reduce the number of records or by setting a loop limit in your script. You set a loop limit in parentheses following the ID pointer. "
  14. Hey Charlie, what does the (1) after GLBATCH.REFERENCENO in the loop declaration? I have the code running and it works perfectly, I'm just curious about this syntax: GLBATCH.REFERENCENO(1)
  15. Josh, I just had a look back through my notes as I was certain I had done this before. I did have an issue using the loop and the only way I could get it to work on the GL Batch object was to use the Original ID of the view, rather than the object ID. I've attached a Word document with screens shots, code and explanation - hopefully this will work for you if you update the original id based on your instance. Although, could be worth trying the object id first to see if it works. Error on journal reference number.docx
  16. Regarding the search - there is a magnifying glass at the top of the page. It searches the clubs you are a member of, and does seem to work.
  17. Have a look at loops : https://www.intacct.com/ia/docs/en_GB/help_action/Default.htm#cshid=Formula_expressions You can use a trigger of type validation and use the loop in the formula box at the bottom. If the value is found, then return the error message...otherwise return null to allow the transaction to post.
  18. In the production systems it's good practice to create a web services user, instead of using a regular user. There are various reasons for this, which are detailed on this help page: https://www-p04.intacct.com/ia/docs/en_GB/help_action/Default.htm#cshid=Web_services_users
  19. I have a requirement from a client to ensure the Reference Number on a GL Batch is unique. In order to check if the reference number is unique, I figured I could use the Intacct API to query on that field and if any results were returned, I know it's been used. Therefore, I would need to use a Trigger rather than a Smart Rule. However, is there a way to manually throw a validation error from the Intacct API trigger type? Any other ideas on how to achieve this if not? Also, is there a search engine for this forum?
  20. The Sender ID/Password (web developer credentials) are used to authenticate against the web services gateway. The user id/password (web services user/company credentials) are used to authenticate against the Intacct instance. Explained here: https://developer.intacct.com/web-services/ You will need to send both the Sender credentials and user credentials (or session id) within an API call.
  • Create New...