code: function (opts, id) {
          let uri = this.classUrl
          if (id) {
            uri += '/' + id
          }
  
          if (typeof opts.data === 'function') {
            opts.next = opts.data
            opts.data = {}
          }
  
          // Reset payment sources
          this.payment_sources = null
  
          return new Promise(function (resolve, reject) {
            new Requestor({ api_version: instance.api_version }).request({
              method: 'get',
              url: [Conekta.api_base, uri].join(''),
              data: opts.data || {},
              next: function (error, response) {
                if (!error) {
                  response = this.listObjectsToArray(response)
                  this._json = response
                  if (id) {
                    this._id = response.id
                  } else {
                    _.each(response.data, (item) => {
                      const index = _.extend(
                        {
                          _json: item,
                          _id: item._id
                        },
                        this
                      )
                      this._items.push(index)
                    })
                  }
                  this.build_children()
                }
                if (opts.next !== undefined) {
                  opts.next(error, this)
                } else {
                  if (error) {
                    reject(error) 
                  } else {
                    resolve(this)
                  }
                }
              }.bind(this)
            })
          }.bind(this))
  
        }
docs: /*
  Method to build GET calls