GoCardlessPro::InvalidApiUsageError 'One of your parameters was incorrectly typed' after Rails 6.0.2.1...

After upgrading to Rails 6.0.2.1, creating a GoCardless redirect flow failed with GoCardlessPro::InvalidApiUsageError: One of your parameters was incorrectly typed. Rack changed session.id to return a Rack::Session::SessionId object instead of a String; the SDK serialized it as a JSON object and the API rejected it. A maintainer confirmed the diagnosis but declined to auto-cast parameters in the client library.

Pass a real string for the session token - use session.id combined with public_id (the fix recommended by the Rails team) instead of bare session.id when creating the redirect flow. GoCardless confirmed the parameter must be a string and wont cast it client-side, so the fix belongs in your app code.

Source: https://github.com/gocardless/gocardless-pro-ruby/issues/67