Difference between revisions of "Transactions"

From WHMCS Documentation

(New page: ==Adding a Manual Transaction== To include external transactions in WHMCS such as when you pay for your servers or other services, you will need to add manual transactions. This can be do...)
 
m (Searching Transactions and Handling Reversals)
 
(36 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 +
WHMCS records all of your transactions and allows you to view and work with them from within the Admin Area. You can also view your merchant account balances for [[Stripe]]™, [[PayPal Basic]], [[PayPal Payments]], and [[PayPal Card Payments]].
 +
 +
You can view a list of transactions at '''Billing > Transactions List'''.
 +
 +
==Applying Payment to an Invoice==
 +
 +
If you receive a payment that the system hasn't automatically logged in WHMCS, you will need to manually apply it to the invoice as a transaction.
 +
 +
* For steps to do this, see [[Invoicing]].
 +
* If a payment is not for any particular invoice, [[Transactions#Issuing_Credit_to_a_Client|issue credit to the client]] instead.
 +
 +
== Multiple Invoices ==
 +
 +
If you receive a payment that applies to '''multiple invoices''', click '''Add Transaction'''. This displays the same settings for applying payment to an individual invoice, but, in addition, lets you set an '''Invoice ID(s)''' value. For this setting, you can enter a comma-seperated list of all of the invoice numbers to apply this payment to. The system will apply payments in the order you enter them until the client has used the full amount. The system will automatically add any remaining amount as a credit to the user for use on future invoices.
 +
 
==Adding a Manual Transaction==
 
==Adding a Manual Transaction==
To include external transactions in WHMCS such as when you pay for your servers or other services, you will need to add manual transactionsThis can be done as follows:
+
 
+
If you receive payment from a client by an offline means like a check or wire transfer, you must enter transactions manually. You may also want to do this to enter external transactions, like expenditures for your servers or other services, into WHMCS.
#Go to Transactions > View Transactions List
+
   
#Click the Add tab at the top of the page
+
To do this:
#The Add Transaction form will be displayed as shown below
+
#From here you can choose the client it relates to (if any), date it was made, gateway used, enter a description, transaction id and the amount
+
# Click '''Add Transaction'''.
#Once complete, click the Add Transaction button to add the transaction to the system
+
# Choose the related client (if any), the date of the payment, and the gateway.
#You can also add transactions directly from inside a clients profile or by marking an invoice paid from the invoice management screen.
+
# Enter a description, transaction ID (if applicable), and the amount.
 
+
# If this is a payment that the client can apply to invoices later (for example, a prefunding or payment on account), select '''Add as Credit'''. This will automatically create the appropriate credit entry for the user.
==Applying Payment to an Invoice==
+
# Click '''Add Transaction'''.
If you receive a payment that isn't automatically logged in WHMCS, rather than adding a manual transaction, you should apply it to the invoice it is for.  If one doesn't exist, you should first generate an invoice and then apply the transaction in that wayTo apply a transaction you do the following:
+
 
+
<div class="docs-alert-warning">
#Locate the invoice in the admin area
+
You must either enter one or more invoice IDs or select '''Add as Credit'''. If you do not do this, the system may not apply the transaction against an invoice or credit to the client's account.
#Once on the invoice management screen for the invoice you want to mark paid, click the Add Payment tab
+
</div>
#Now enter all the details about the payment into the fields shown such as the gateway used, date, transaction ID and amount.
+
#You can pay part or all of the invoice or even apply more than the amount due on the invoice. If you apply a payment to an invoice which is larger than the amount due then any excess will automatically be added as credit to the user for use on future invoices.
+
==Account Prefunding/Add Funds==
#Once all the fields are filled out, click the Add Payment button to add it
+
 
+
Sometimes, a client may want to deposit money with you in advance (for example, if they are about to place several orders or they will be unavailable). WHMCS allows for this using '''Account Prefunding/Credit'''.
==Finding a Transaction==
+
   
Say for example you get notified a month after a transaction that it has been subject to a chargeback or that it was fraudulently made. You need to locate that transaction and what it was forIn the example below, we will be looking for a transaction made by 2CheckOut with the transaction ID "6A5245278HM".
+
For more information, see [[Add Funds]].
 
+
   
#Begin by going to Transactions > View Transactions List.
+
==Managing Credit==
#This will show you a list of all the transactions made through the WHMCS system
+
#Next, click the Filter tab at the top - the various filtering options available will appear
+
Credit allows customers to have a prepaid balance on their account. This can allow customers to pay in advance and can help with overpayments.
#We know this transaction was made using 2CheckOut so we select 2CheckOut in the Gateway Dropdown List
+
   
#We also know the transaction ID so we enter this in the Transaction ID field as shown below
+
For more information, see [[Credit/Prefunding]] and [[Adding and Working With Credit]].
#Once you have completed selecting filter options, click Filter
+
#Any matching transactions will be displayed.
+
==Searching Transactions and Handling Reversals==
#From here we can see the transaction date, client who made it and the invoice they were paying
+
#You can therefore take the appropriate action in suspending the users account, removing the transaction and marking the invoice Cancelled
+
<div class="docs-alert-info">
 +
WHMCS 8.3 and higher includes support for disputes for [[Stripe]] (credit card only) and some [[PayPal]]® transactions at '''Billing > [[Disputes]]'''.
 +
</div>
 +
 +
If you have had a check bounce, or you've received a chargeback or dispute for a transaction you already applied, it is likely that the actions that payment should trigger, such as renewal of a product, domain registration, or renewal, have already happened and you can't reverse them. You will need to deduct the amount from your income and issue the client a new invoice to repay.
 +
   
 +
For example, you would perform the following steps for a transaction that a client paid in 2CheckOut with the transaction ID <tt>6A5245278HM</tt>:
 +
 +
# Click the '''Search/Filter''' tab at the top.
 +
# Select ''2CheckOut'' as the payment gateway.
 +
# Enter the transaction ID (<tt>6A5245278HM</tt>).
 +
# Click submit. Any matching transactions will display. From here, we can see the transaction date, the client who made it, and the invoice they were paying.
 +
# Click the invoice for that transaction.
 +
# In the '''Refund''' tab, apply a "Record Only" refund to deduct the paid amount from your income and show that invoice as unpaid.
 +
# Perform the necessary actions for each item on the invoice.  For example, you might want to suspend a product from the client profile to prevent further use or contact a domain's registrar and ask whether a cancellation is possible.
 +
# Optionally, create a new manual invoice for repayment (for example, if the dispute is a mistake or the client has contacted you) by manually creating a custom invoice. This can also apply any fees or surcharges you may have incurred for the disputed payment. '''Do not''' attempt to re-invoice the original items for repayment: that could lead to double incrementing of due dates and double renewal actions on products and services.
  
 +
== Payment Gateway Balances ==
 +
 +
<div class="docs-alert-success">We added this feature in WHMCS 8.2 and updated the displayed details in WHMCS 8.9.</div>
 +
 +
You can view payment gateway balances for [[Stripe]], [[PayPal Basic]], [[PayPal Payments]], and [[PayPal Card Payments]] at '''Billing > Transactions List''' in the WHMCS Admin Area. This lets you check your financial details sooner and stay aware of trends and changes.
 +
 +
* The displayed balances remain in the cache for a specific amount of time and will then automatically refresh. You can also manually refresh them.
 +
* When you click on a transaction in this list, additional details will display for that transaction.
 +
* Balances display by default for admins with the '''Full Administrator''' role. To make this information available to other admins, assign the '''View Gateway Balances''' permission to the desired role.
 +
 +
<div class="docs-alert-success">If you use [[Stripe]], you can also view balances in the Admin Area Dashboard widget.</div>
 +
 +
<div class="docs-alert-info">For information about displaying balances in custom development, see our [https://developers.whmcs.com/payment-gateways/displaying-balances Developer Documentation].</div>
 +
 +
 
==The Gateway Logs==
 
==The Gateway Logs==
 
+
If transactions aren't being automatically handled by WHMCS then it is often useful to take a look at the transaction log.  The transactions log can be viewed by going to Transactions > Gateway Log.
+
If WHMCS isn't automatically handling transactions or you experience other transaction-related issues, check the related logs at '''Billing > [[Gateway Log]]'''.
 
 
If a payment return has been made by a payment gateway integrated with WHMCS then details of the return will be listed here.  Each return has three possible outcomes - Successful, Invalid or Error.
 
 
 
*A successful payment return occurs when the payment is identified and recorded by WHMCS automatically and any required actions are performed.
 
*An invalid return occurs when the data returned from the gateway is not expected by WHMCS - for example the Invoice ID is wrong or the payment value doesn't match
 
*Finally, an error return occurs if the data sent from the payment gateway contains errors or cannot be verified
 
 
 
Invalid returns will occur from time to time when the data received is not fully valid and are usually only random one offs.  If you start getting a lot of transactions coming back as invalid or as errors then you might want to contact us so we can check it out.
 

Latest revision as of 16:56, 17 May 2024

WHMCS records all of your transactions and allows you to view and work with them from within the Admin Area. You can also view your merchant account balances for Stripe™, PayPal Basic, PayPal Payments, and PayPal Card Payments.

You can view a list of transactions at Billing > Transactions List.

Applying Payment to an Invoice

If you receive a payment that the system hasn't automatically logged in WHMCS, you will need to manually apply it to the invoice as a transaction.

Multiple Invoices

If you receive a payment that applies to multiple invoices, click Add Transaction. This displays the same settings for applying payment to an individual invoice, but, in addition, lets you set an Invoice ID(s) value. For this setting, you can enter a comma-seperated list of all of the invoice numbers to apply this payment to. The system will apply payments in the order you enter them until the client has used the full amount. The system will automatically add any remaining amount as a credit to the user for use on future invoices.

Adding a Manual Transaction

If you receive payment from a client by an offline means like a check or wire transfer, you must enter transactions manually. You may also want to do this to enter external transactions, like expenditures for your servers or other services, into WHMCS.

To do this:

  1. Click Add Transaction.
  2. Choose the related client (if any), the date of the payment, and the gateway.
  3. Enter a description, transaction ID (if applicable), and the amount.
  4. If this is a payment that the client can apply to invoices later (for example, a prefunding or payment on account), select Add as Credit. This will automatically create the appropriate credit entry for the user.
  5. Click Add Transaction.

You must either enter one or more invoice IDs or select Add as Credit. If you do not do this, the system may not apply the transaction against an invoice or credit to the client's account.

Account Prefunding/Add Funds

Sometimes, a client may want to deposit money with you in advance (for example, if they are about to place several orders or they will be unavailable). WHMCS allows for this using Account Prefunding/Credit.

For more information, see Add Funds.

Managing Credit

Credit allows customers to have a prepaid balance on their account. This can allow customers to pay in advance and can help with overpayments.

For more information, see Credit/Prefunding and Adding and Working With Credit.

Searching Transactions and Handling Reversals

WHMCS 8.3 and higher includes support for disputes for Stripe (credit card only) and some PayPal® transactions at Billing > Disputes.

If you have had a check bounce, or you've received a chargeback or dispute for a transaction you already applied, it is likely that the actions that payment should trigger, such as renewal of a product, domain registration, or renewal, have already happened and you can't reverse them. You will need to deduct the amount from your income and issue the client a new invoice to repay.

For example, you would perform the following steps for a transaction that a client paid in 2CheckOut with the transaction ID 6A5245278HM:

  1. Click the Search/Filter tab at the top.
  2. Select 2CheckOut as the payment gateway.
  3. Enter the transaction ID (6A5245278HM).
  4. Click submit. Any matching transactions will display. From here, we can see the transaction date, the client who made it, and the invoice they were paying.
  5. Click the invoice for that transaction.
  6. In the Refund tab, apply a "Record Only" refund to deduct the paid amount from your income and show that invoice as unpaid.
  7. Perform the necessary actions for each item on the invoice. For example, you might want to suspend a product from the client profile to prevent further use or contact a domain's registrar and ask whether a cancellation is possible.
  8. Optionally, create a new manual invoice for repayment (for example, if the dispute is a mistake or the client has contacted you) by manually creating a custom invoice. This can also apply any fees or surcharges you may have incurred for the disputed payment. Do not attempt to re-invoice the original items for repayment: that could lead to double incrementing of due dates and double renewal actions on products and services.

Payment Gateway Balances

We added this feature in WHMCS 8.2 and updated the displayed details in WHMCS 8.9.

You can view payment gateway balances for Stripe, PayPal Basic, PayPal Payments, and PayPal Card Payments at Billing > Transactions List in the WHMCS Admin Area. This lets you check your financial details sooner and stay aware of trends and changes.

  • The displayed balances remain in the cache for a specific amount of time and will then automatically refresh. You can also manually refresh them.
  • When you click on a transaction in this list, additional details will display for that transaction.
  • Balances display by default for admins with the Full Administrator role. To make this information available to other admins, assign the View Gateway Balances permission to the desired role.
If you use Stripe, you can also view balances in the Admin Area Dashboard widget.
For information about displaying balances in custom development, see our Developer Documentation.


The Gateway Logs

If WHMCS isn't automatically handling transactions or you experience other transaction-related issues, check the related logs at Billing > Gateway Log.