       { plan, userQuantity } = calcOptions
 
       unless 'custom-plan' in plan.tags
-        return callback message: 'This plan is not tagged with "custom-plan"'
+        return callback new KodingError 'This plan is not tagged with "custom-plan"'
 
       queue = [
         =>
-          @fetchProductCode plan, "group", (err, productCode) ->
+          @fetchProductCode plan, 'group', (err, productCode) ->
             return callback err  if err
 
             quantities[productCode] = plan.quantities[productCode]

JResourcePlan = require './resourceplan'
JPaymentPack  = require './pack'
JPaymentFulfillmentNonce = require './nonce'

      dash queue, -> callback null, quantities

  @fetchProductCode = (plan, tags, callback) ->
    queryOptions =
      targetOptions :
        selector    : { tags }

    plan.fetchProducts null, queryOptions, (err, products) ->
      return callback err  if err
      unless products?.length
        return callback new KodingError 'no products found'

      callback null, products[0].planCode

