Import batch from external csv/db/json file

Is it possible to create a batch in Journal Entry and import all the transactions through the API? I am trying to import data from Expensify.


Is it possible to automate it on a scheduler through the front end in Citrix viewer?

Comments

  • Hi Jason,

    The SKY API endpoint you're looking for for issue #1 is the Create (POST) Journal Entry Batch, and you can find it in the API reference at https://developer.sky.blackbaud.com/docs/services/56eb17a0a9db9516c46bff6f/operations/CreateJournalEntryBatch


    This will take the payload you give it and create an open (editable batch). You can validate it (to make sure it will post) first by using https://developer.sky.blackbaud.com/docs/services/56eb17a0a9db9516c46bff6f/operations/ValidateJournalEntryBatch


    This will return a 200 when validation is complete, but you may have errors which will be in the return payload (debits and credits don't balance, etc.) If it passes validation, the is_valid will come back as true.


    Finally, to post it to Financial Edge NXT (and by post, I mean commit it to the permanent audit trail, not HTTP POST), you would use this one:
    https://developer.sky.blackbaud.com/docs/services/56eb17a0a9db9516c46bff6f/operations/PostJournalEntryBatch


    (I know the word "post" can be confusing, but accounting systems, including ours, have used the word "post" for decades to indicate the "permanently commit to the audit trail.")


    On issue #2, there is no current way to post the batch automatically on a schedule through SKY API. In database view, if you have the queue product, you can post batches that are already created on a schedule, but that capability will not be around forever.


    Please let me know if you have questions. Thanks for using SKY API!


    Eddie Barker

    Financial Edge NXT Product Management
  • Hi Eddie,


    Thanks for the thorough reply. The first Create(Post) Journal Entry Batch definitely will work to create the new Journal Entry and return the batch number.


    How would I go about importing for example 100 transactions? Would I need to create a loop and call the API 100 times or is there a way to include a file for processing?


    Thanks!


    -Jason