diff --git a/lib/cieloz/requisicao_transacao.rb b/lib/cieloz/requisicao_transacao.rb
index <HASH>..<HASH> 100644
--- a/lib/cieloz/requisicao_transacao.rb
+++ b/lib/cieloz/requisicao_transacao.rb
@@ -127,6 +127,7 @@ class Cieloz::RequisicaoTransacao < Cieloz::Base
     }
 
     validates :bandeira, inclusion: { in: BANDEIRAS_DEBITO }, if: "@produto == DEBITO"
+    validates :bandeira, inclusion: { in: Cieloz::Bandeiras::ALL }, if: "@produto == CREDITO"
 
     def attributes
       {
diff --git a/test/unit/validations_test.rb b/test/unit/validations_test.rb
index <HASH>..<HASH> 100644
--- a/test/unit/validations_test.rb
+++ b/test/unit/validations_test.rb
@@ -116,7 +116,14 @@ describe Cieloz::RequisicaoTransacao::FormaPagamento do
     end
   end
 
-  it "validates credito" do
+  it "validates bandeiras for credito" do
+    all_flags.each { |flag|
+      subject.credito flag
+      must ensure_inclusion_of(:bandeira).in_array(all_flags)
+    }
+  end
+
+  it "accepts payment for credito" do
     all_flags.each { |flag|
       subject.credito flag
       assert_equal subject.class::CREDITO, subject.produto
Validates bandeiras for credito operations