2017-08-08 17 views
1

私は問題を抱えている、これは私に、このエラーが表示さ:トークンは既に使用されている、conekta

「トークンは既に使用されているが、」 「ラtarjetaなしpudoのSERのprocesada」

これはテストトークンでこれを行うとうまくいきますが、別のトークンでこれを実行しても動作しませんが、これは実装です。

bool band = true; 
      Order order; 

      Expression<Func<Usuario, bool>> exp = (x) => x.IdUsuario == IdUsuario; 
      UsuarioLoader uLoader = new UsuarioLoader(); 
      var usuario = uLoader.GetElementByProperty(exp); 
      try 
      { 

       order = new conekta.Order().create(@"{ 
        ""currency"":""MXN"", 
        ""customer_info"": { 
        ""customer_id"": """[email protected]""" 
        }, 
        ""line_items"": [{ 
        ""name"": ""Cobro Union"", 
        ""unit_price"": 1000, 
        ""quantity"": 1 
        }], 
        ""charges"": [{ 
        ""payment_method"": { 
         ""type"": ""card"", 
         ""token_id"": """[email protected]""" 
        },""amount"":1000 
        }] 
       }"); 

      } 
      catch (ConektaException e) 
      { 
       band = false; 
       foreach (JObject obj in e.details) 
       { 
        System.Console.WriteLine("\n [ERROR]:\n"); 
        System.Console.WriteLine("message:\t" + obj.GetValue("message")); 
        System.Console.WriteLine("debug:\t" + obj.GetValue("debug_message")); 
        System.Console.WriteLine("code:\t" + obj.GetValue("code")); 
       } 

      } 
+0

トークンはすでに使用されていますか? – mjwills

+0

'tokenTarjeta'と' usuario.TokenConekta'の値は何ですか? – mjwills

+0

いいえ、トークンは新しいです –

答えて

0

問題は、パラメータtoken_idは1つのコールだけのためであるということですが、あなたが自動支払いにカードを再使用したい場合は、代わりにtoken_idのpayment_source_id設定する必要があり、これは正しいコードは次のとおりです。

Expression<Func<Usuario, bool>> exp = (x) => x.IdUsuario == IdUsuario; 
      UsuarioLoader uLoader = new UsuarioLoader(); 
      var usuario = uLoader.GetElementByProperty(exp); 
      try 
      { 

       order = new conekta.Order().create(@"{ 
        ""currency"":""MXN"", 
        ""customer_info"": { 
        ""customer_id"": """+usuario.TokenConekta+ @""" 
        }, 
        ""line_items"": [{ 
        ""name"": ""Cobro Union"", 
        ""unit_price"": 1000, 
        ""quantity"": 1 
        }], 
        ""charges"": [{ 
        ""payment_method"": { 
         ""type"": ""card"", 
         ""payment_source_id"": """ + [email protected]""" 
        },""amount"":1000 
        }] 
       }"); 

      } 
      catch (ConektaException e) 
      { 
       band = false; 
       foreach (JObject obj in e.details) 
       { 
        System.Console.WriteLine("\n [ERROR]:\n"); 
        System.Console.WriteLine("message:\t" + obj.GetValue("message")); 
        System.Console.WriteLine("debug:\t" + obj.GetValue("debug_message")); 
        System.Console.WriteLine("code:\t" + obj.GetValue("code")); 
       } 

      } 
関連する問題