Authorize.net authorize only

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • compumate99
    Mivite

    • Jul 2009
    • 139

    #1

    Authorize.net authorize only

    Is it possible to get transaction ID after payment is authorized by authorize.net payment gateway?
    I need transaction ID for offline capture.

    Thank you.
    Daniel Kim, Compu-Mate
    Developer
  • Gordon - Phosphor Media
    Developer Partner


    • Mar 2006
    • 448

    #2
    If a transaction ID is available, it will be in the OrderPayments table in the pay_secdat field. All the data there is serialized, so you will need to run miva_array_deserialize() on it first.
    Gordon Currie
    Phosphor Media - "Your Success is our Business"

    Improve Your Customer Service | Get MORE Customers | Edit Any Document Easily | Free Modules | Follow Us on Facebook
    phosphormedia.com

    Comment

    • compumate99
      Mivite

      • Jul 2009
      • 139

      #3
      Thanks for quick response.
      I think pay_secdat field is encrypted and I probably need to decrypt it first, right?
      Daniel Kim, Compu-Mate
      Developer

      Comment

      • Gordon - Phosphor Media
        Developer Partner


        • Mar 2006
        • 448

        #4
        It would be encrypted if the store is using encryption, so yes you would have to decrypt it first in that case.
        Gordon Currie
        Phosphor Media - "Your Success is our Business"

        Improve Your Customer Service | Get MORE Customers | Edit Any Document Easily | Free Modules | Follow Us on Facebook
        phosphormedia.com

        Comment

        • RayYates
          Developer Partner



          • Dec 2006
          • 1517

          #5
          Gordon. Not to hijack the thread, but what;s the APi call to decrypt. I did not find it.
          Ray Yates
          "If I have seen further, it is by standing on the shoulders of giants."
          --- Sir Isaac Newton

          Comment

          • Gordon - Phosphor Media
            Developer Partner


            • Mar 2006
            • 448

            #6
            I've never had to decrypt/encrypt this particular field, as the API functions for payment modules *appear* to do this behind the scenes. I have used [ g.Module_Library_Crypto ].Decrypt_Payment_Password() in an email function. I know there are other decryption functions in that file.
            Gordon Currie
            Phosphor Media - "Your Success is our Business"

            Improve Your Customer Service | Get MORE Customers | Edit Any Document Easily | Free Modules | Follow Us on Facebook
            phosphormedia.com

            Comment

            • compumate99
              Mivite

              • Jul 2009
              • 139

              #7
              Decrypt_Payment function can be found in crypto_public.mv from LSK package.
              Daniel Kim, Compu-Mate
              Developer

              Comment

              • Gordon - Phosphor Media
                Developer Partner


                • Mar 2006
                • 448

                #8
                Daniel:

                Looking at that function, it returns this message:
                'Decrypt_Payment is no longer supported for reasons of PA-DSS compliance. Use Decrypt_Order or Decrypt_OrderPayment instead.'

                So Decrypt_OrderPayment would probably work for you.
                Gordon Currie
                Phosphor Media - "Your Success is our Business"

                Improve Your Customer Service | Get MORE Customers | Edit Any Document Easily | Free Modules | Follow Us on Facebook
                phosphormedia.com

                Comment

                • compumate99
                  Mivite

                  • Jul 2009
                  • 139

                  #9
                  I am following error, MER-CRY-PRV-00008, using Decrypt_OrderPayment.

                  Decryption failed: Unsupported encryption key type.

                  Code:
                  <MvEVAL EXPR = "{ Payment_Read( l.orderpayment ) }">
                  <MvASSIGN NAME = "l.passphrase" VALUE = "My Test Passpfrase">
                  <MvASSIGN NAME = "l.data" VALUE = "">
                  <MvASSIGN NAME = "l.debug" VALUE = "{ [ 'lib/crypto.mvc' ].Decrypt_OrderPayment( 'Order Decryption Test', l.orderpayment, l.passphrase, .data ) }">
                  Last edited by compumate99; 05-27-16, 01:11 PM.
                  Daniel Kim, Compu-Mate
                  Developer

                  Comment

                  Working...
                  X