- [Home page](https://www.brimit.com/)
- [Blog](https://www.brimit.com/blog)

# How to Extend Bizfx Interface to Support Import/Export Features in Sitecore Commerce 9 (Part 1)

[#How-to](https://www.brimit.com/blog?categories=#How-to) [DXP](https://www.brimit.com/blog?platforms=DXP)
[Andrei Paliakou](https://www.brimit.com/blog/author?authors=Andrei%20Paliakou) on July 14, 2020

![sitecore-techtalks](https://www.brimit.com/-/jssmedia/project/brimit/blog/2020/sitecore-techtalks.png?h=476&iar=0&w=716&hash=0BE2628F3BA744B18C11741903BB4DC2)

In the previous blog posts, I explained how to implement [Import Price Books](https://www.brimit.com/blog/sitecore-commerce-9-import-price-books) and [Export Price Books](https://www.brimit.com/blog/sitecore-commerce-9-export-price-books) features for Sitecore Commerce.
In this blog post, I will explain how to extend BizFx interface to support import/export features.

You can find the source code here: [https://github.com/Frog911/Sitecore.Commerce.ImportExport](https://github.com/Frog911/Sitecore.Commerce.ImportExport)

I would add two buttons for importing and exporting Price Books to PriceBooks Dashboard.

It will be required to create PopulateImportPricingDashboardActionBlock:

[![Sitecore Commerce 9: Extend BizFx Part 1](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-3/11.png?w=900&hash=C6FC6AB94DE4EDCE78C9E6B985BD2DB2)](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-3/11.png)

After that, I would create GetPricebookExportViewBlock, which will build a view with a Download File component. It will be possible to provide the path where the exported file should be saved.

[![Sitecore Commerce 9: Extend BizFx Part 1](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/1.png?w=900&hash=0816E7E0E901C2F93C7D449F3233B4D5)](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/1.png)

For supporting File Upload, we have to create another ViewBlock. It will provide a possibility to select file for import process.

[![Sitecore Commerce 9: Extend BizFx Part 1](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/2.png?w=900&hash=CEEE2156925E95D9E233858E4E074284)](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/2.png)

Now we have to create DoActionPricebookImportBlock, which will be responsible for reading the imported file stream and starting the import of Price Books. The importing process will run as a long running operation. As a result, it will send the response TaskId. From the BizFx website on the front end side a call will be triggered to check the status by TaskId with an interval of few seconds.

[![Sitecore Commerce 9: Extend BizFx Part 1](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/3.png?w=900&hash=2FB4AB4A6F5709197A57284592A0E46F)](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/3.png)

In addition, we have to register our created blocks as our last step:

[![Sitecore Commerce 9: Extend BizFx Part 1](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/4.png?w=900&hash=69421E61BCCD97A9E418DCBC5F480FC9)](https://www.brimit.com/-/media/project/brimit/blog/2020/apaliakou/post-4/4.png)

That is all what we have done from the Sitecore Commerce Engine prospective.

In the next blog post, I will explain how to extend BizFx website to support this logic.

Stay tuned!

###### Author

![apaliakou](https://www.brimit.com/-/jssmedia/feature/blogs/authors/apaliakou.jpg?h=216&iar=0&w=360&hash=5BE96F17AE5B47F66D9F684B87773675)

Andrei Paliakou

Sitecore MVP/ Lead Developer
[Andrei Paliakou](https://www.brimit.com/blog/author?authors=Andrei%20Paliakou)

###### More By Categories

[#How-to](https://www.brimit.com/blog?categories=#How-to)

###### More by Platform

[DXP](https://www.brimit.com/blog?platforms=DXP)
