Automating the customer’s invoice payments by charging their credit card reduces the likelihood of late or missed payments and ensures a predictable cash flow for you as a service provider.

For customers, this means they no longer have to remember payment due dates or take manual actions. Automatic credit card charging saves them time and spares them from service suspension and potential penalties for missing payment deadlines.

As a service provider, you have the flexibility to choose when to charge customers’ credit cards – either immediately upon invoice generation or on the due date of the invoice.

Upon invoice generation

Link copied to clipboard

When a customer’s billing period closes, PortaBilling calculates the corresponding charges, creates the invoice, and processes the payment from the customer’s credit card. If the credit card payment was processed successfully, PortaBilling generates the invoice PDF with a zero amount due and “paid” status.

If the payment was not successful, e.g., the card had expired or had no available funds, the invoice reflects the amount due (the charges for the most recent billing period along with any outstanding balance from previous billing periods). In such cases, the invoice is assigned the “unpaid” status. If no payment is received by the due date (which is set based on Payment terms), the invoice status changes to “overdue” which may lead to service limitation/suspension (see Notifications and actions if payment is past due).

If automatic credit card charging is enabled together with the “review invoices” functionality, then credit cards will be charged only after the administrator’s approval of the invoice.

Upon invoice due date

Link copied to clipboard

If you choose this option, PortaBilling generates the invoice in PDF format and sends it to the customer and the invoice amount due is calculated  according to the standard algorithm: based on the previous invoice balance, payments received during this period, and charges during this period. Customers can pay their invoice through any available channel, e.g., submitting a credit card payment via the self-care portal or doing a wire transfer. If on the due date there is still an unpaid amount on this invoice, PortaBilling automatically charges it amount to the customer’s credit card.

You can use this feature to collect unpaid amounts not only for regular but also for out-of-turn invoices.


Say a $30 invoice is generated on September 1st. On September 5th, the customer makes a partial payment of $20. On September 15th, the invoice due date, PortaBilling calculates the remaining unpaid amount ($30-$20=$10) and automatically charges the customer’s credit card for the outstanding $10. This payment ensures that the invoice is fully settled, and the customer can continue using their service without any interruptions.

Additional attempts

Link copied to clipboard

You can configure PortaBilling to re-attempt collecting customer payments in case the initial attempt fails, e.g., due to lack of available funds.

PortaBilling can make additional attempts to charge the customer’s credit card before (if the initial attempt is made upon invoice generation) and after the invoice due date.

In the customer class settings, you can specify when the additional attempts should be made, e.g., if you specify “0,3,7” in the Additional attempts after the due date, days field, this means that PortaBilling will attempt to charge the customer’s credit card on the due date, 3 days after the due date, and 7 days after the due date.

Merchant banks typically impose charges for each unsuccessful credit card transaction. Therefore, it’s advisable not to configure too many attempts to avoid incurring additional costs as a service provider.

Let’s say you configured PortaBilling to automatically charge the customer’s credit card upon invoice generation, and if the transaction fails, to perform an additional attempt 5 days before the invoice due date.

On April 1, ABC company receives their March invoice with an amount due of $50. PortaBilling attempts to charge the customer’s credit card for $50 but there are insufficient funds, resulting in a failed payment. Invoice will be due on April 15th. On April 10th,

5 days before the due date, PortaBilling initiates another attempt to charge the customer’s credit card for the $50. This time, the payment is successful, and the March invoice’s status changes to “paid.”

If you use a long NET period, such as when an invoice becomes due within 30 days after generation, the customer may have multiple unpaid invoices, and in this case, PortaBilling attempts to charge the customer’s credit card for each invoice individually. This way, when the customer reviews their credit card statement, they can match the transaction amounts with individual invoices.


Link copied to clipboard

Automatic credit card charging can be enabled at the customer class level, for regular and out-of-turn invoices separately:

  • Go to Customer class > Finances > Invoicing > Regular/Out-of-turn invoices
  • Specify the payment terms
  • Specify when the credit cards should be charged: upon invoice generation or on the due date
  • Define when additional attempts to charge the customer’s credit card should be made Automatic credit card charging configuration

On this page

What's new
Admin manuals
UI help
Back to main menu