What's better: return null or handle the Exception?
A possibly useful pattern here can be the Null Object-pattern.

Instead of returning null, return a "null SalePoint". Perhaps something like new SalePoint();, or new SalePoint("some special url");. Then make your saveSalePoint method do nothing if the SalePoint has a special url indicating that it's null. 

Another option is to return null from your parseSalePoint method as you are currently doing and then simply return from the saveSalePoint method if the argument is null which will remove the null check from processBarCodeResponse.

Honestly, I can't tell you which option you should use or not. I can only present you with alternatives. Personally I like Null Object pattern a lot, but it doesn't always makes much sense to use that pattern.

By the way, why isn't SalePoint immutable? Instead of first creating a SalePoint object and then setting it's values one by one, read the values into variables and call a constructor which takes type, url, salePointId as arguments and get rid of the accessible properties (make them private, and also get rid of the setter-methods if you have any)