Question regarding card id when customer pays by emailed invoice

Hi there,

If a customer is being charged from a card on file for a subscription with no end date, and then some time later, that card fails for whatever reason, Square will send an emailed invoice for the payment.

Does this mean the customer will have to manually pay by invoice from now on? Does Square save this new payment method and then that card becomes the new ‘card on file’ for this customer, or is there an extra step required to return to automatically recurring payments from a card on file?

Second question, is there a way to not send the invoice requesting payment? I would rather just use the webhook to trigger a subscription pause, and have the customer update their payment method from my site instead, and then trigger a subscription update when that payment method is successfully updated. Is there a way to avoid the billed invoice altogether? I am afraid that having multiple sources of payments will become hard to keep the subscription status in sync between square and my own database.

I couldn’t find much support in the docs regarding how failed payments get handled, so any help here would be appreciated.

:wave: I’m Square Dev AI, here to help answer your question!
Based on the information you’ve provided, the following documentation will help answer your question:

https://developer.squareup.com/docs/invoices-api/pay-refund-invoices

Additional Documentation

https://developer.squareup.com/docs/invoices-api/overview
https://developer.squareup.com/docs/reader-sdk/cookbook/charge-cards-on-file
https://developer.squareup.com/docs/app-marketplace/requirements/subscriptions-api

If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.
Otherwise one of our Developer Advocates will provide additional assistance shortly.

When an automatic payment fails, Square changes the automatic_payment_source field of the payment request to NONE and sends an invoice to the customer. The customer will then have to manually pay the invoice. Square does not automatically save this new payment method as the new ‘card on file’ for this customer. If you want to return to automatically recurring payments from a card on file, you would need to manually update the card on file for the customer.

As for your second question, there is currently no way to prevent Square from sending an invoice when an automatic payment fails. The invoice is automatically generated and sent to the customer as part of Square’s process for handling failed automatic payments. If you want to handle failed payments in a different way, such as pausing the subscription and having the customer update their payment method on your site, you would need to implement this logic in your application. You can use the invoice.scheduled_charge_failed webhook event to trigger this process in your application.

Remember to always keep your application’s subscription status in sync with Square’s status by listening to the relevant webhook events.

This answer was reviewed by @Bryan-Square.

This AI generated answer was surprisingly helpful.

A follow-up question:

Does the billing anchor date change when a customer manually pays by invoice? Or does square prorate the charge?

For instance, let’s stay a subscription payment fails, and an invoice is generated. If it takes a customer 1 week to pay, does this just pay in full and activate the subscription as normal?

The same for a paused subscription with an indefinite end date:

Example: A customer’s monthly subscription is on a 1st of the month billing cycle. If the customer pauses a monthly subscription on January 5, and on April 12 attempts to reactivate, does this re-anchor the payment cycle to the 12th? Or does the customer maintain the billing cycle of the 1st, pay for a full month on the 12th, and then again on the 1st?

Also, in this example, would Square disregard the missed February/March payment, and activate it with a single month’s charge in April moving forward?

Thanks.

No, the billing anchor date won’t change if the customer has to manually pay the invoice. If the initial payment is missed the payment is just overdue. If not paid by the next billing cycle the customer will be billed for the current cycle and any outstanding payments. :slightly_smiling_face:

Thank you Bryan,

Hopefully my final question:

If a subscription is paused indefinitely, by nature this would mean the customer doesn’t want to be charged until they reactivate the subscription manually. Does Square just charge for the current billing cycle whenever the customer reactivates, assuming the reactivation is scheduled for immediate activation?

So if a customer’s billing cycle is 15th - 15th, and they pause their account, and then 4 months later on the 26th they decide to reactivate, does Square charge them for the current billing cycle of that month only, and then back to the anchored cycle?

It seems like paused subscriptions shouldn’t accrue outstanding balances. Please let me know if I am misunderstanding anything.

Thank you for all your help

When a subscription is paused it won’t be charging the customer. Once reactivated then they will be charged for the non paused cycles. :slightly_smiling_face: