public override string ToXml(bool indent)
        {
            dynamic xml = new Xml {
                UseDashInsteadUnderscore = true
            };

            xml.Declaration(encoding: "ISO-8859-1");
            xml.requisicao_transacao(new { id = UniqueKey, versao = CieloVersion.Version }, Xml.Fragment(req => {
                Affiliate.ToXml(req, Configuration);

                if (_creditCardData != null)
                {
                    _creditCardData.ToXml(req);
                }

                _order.ToXml(req, Configuration);

                _paymentMethod.ToXml(req);

                req.url_retorno(Configuration.ReturnUrl);
                req.autorizar((int)_options.AuthorizationType);
                req.capturar(_options.Capture.ToString(CultureInfo.InvariantCulture).ToLower());
                req.gerar_token(_options.GenerateToken.ToString(CultureInfo.InvariantCulture).ToLower());
            }));

            return(xml.ToString(indent));
        }