12

I just read this topic about the Magento payment flow. It handles about the role of Payment Methods and invoices in Magento. I am curious now though what the exact role of Transactions are within Magento. There does not seem to exist a tutorial or information about this on the internet I can find.

As far as I understand it, they can be open or closed and can have children (also transactions). I assume open transactions are not completed/paid yet and closed transactions are? Also my company bought a payment extension which does not make use of transactions. Is this acceptable or this is a missing functionality of the extension?

Questions I have:

  1. What is the general role of transactions in Magento?
  2. Why would you not want to use transactions for your payment method?
  3. What is the concept of transactions with children?
  4. Can transactions be used to manage multiple subpayments to an order with possibly different payment methods?

Thanks in advance.

Community
  • 1
  • 1
Lucas Moeskops
  • 5,445
  • 3
  • 28
  • 42

1 Answers1

9

Transaction are meant for reoccurring billing profiles and they don't have a general role in your flow and are only important if you need to implement partial payments or reoccurring payments

  1. they don't have a general role in your flow and are only important if you need to implement partial payments or reoccurring payments
  2. you don't need them if you have only one payment to capture
  3. you can define the payments more flexibly
  4. its up to implementation. Nothing really is defined here and you can choose freely how to use this. I doubt that you can use multiple payment methods within one order and this would need your own payment "proxy" extension that would control that
Anton S
  • 12,750
  • 2
  • 35
  • 37
  • Ok, thats different than I expected, but makes sense. Thanks. – Lucas Moeskops Aug 16 '11 at 07:53
  • I disagree with "you don't need them if you have only one payment to capture". Magento uses this to know if the transaction has been captured (closed) or not (opened). So the transaction-open property is needed for authorizing online, and capturing later in admin also online on invoice creation. – awavi May 08 '14 at 00:51
  • great to know awavi i guess i meant if you only need one payment to handle not exactly capturing after authorisation – Anton S May 08 '14 at 20:45
  • I noticed that when my payments are authorized, they are marked "yes" under Is Closed column, but when the same payment is captured the Is Closed column says "no." What is the meaning of this? – mydoglixu Jun 30 '14 at 21:54