Dograh

BNPL Payment Reminder Calls with AI: Timing, Script, Hand-Off

BNPL Payment Reminder Calls with AI: Timing, Script, Hand-Off
Use CaseNovember 5, 2026·7 min read

BNPL Payment Reminder Calls with AI: Timing, Script, Hand-Off

Vemu Sandeep
Vemu Sandeep·GTM Engineer, Dograh AI

GTM engineer at Dograh working across voice AI and enterprise AI. IIT (BHU) and IIM Visakhapatnam alumnus.

BNPL payment reminder calls with AI reach the borrower two days before an instalment is pulled. After an identity check, the agent confirms the amount and date and asks whether the money will be there. A request to move the date is written to the lender's system for staff to answer, and the agent never promises a new date.

Key Takeaways

  • Two days out leaves time to move money before the autopay pull.
  • The amount plays only after the identity check, never in the greeting.
  • Reschedule requests go to staff, and the agent never promises a new date.

This post is part of our guide to AI voice agents for BNPL lenders, where the reminder exists to stop a failed pull. Below, we cover timing, a short script and reschedule requests. Each part also shows how the reminder call runs in Dograh, the open-source voice agent platform our team builds.

Why the call lands two days before the pull

A reminder is worth placing only if the borrower can still act on it. Two days before the due date leaves time to move money between accounts, and it is close enough that the date is easy to remember.

The cost of missing that window lands on the borrower first. The Federal Reserve's 2025 household survey found that 11% of BNPL users had a BNPL payment trigger an overdraft or non-sufficient-funds fee from their bank. A call that gets the money in place before the pull saves that fee and the lender's late fee after it.

A reminder from the lender, in its own name and before anything is late, is an informational call. Under the Telephone Consumer Protection Act (TCPA), an AI voice counts as an artificial voice, so the FCC's calling rules expect prior express consent for calls to a mobile, usually the number the borrower gave for the plan. Add an offer to the reminder and it becomes a sales call that needs written consent.

The call also sits beside written notices, never in their place. New York's proposed BNPL rules would allow a late fee only if a written due-date notice went out at least 7 days before the due date. A phone call is not that notice, so the written one still goes out. The New York rules are still proposed, so confirm your notices and consent records with counsel before the first campaign.

Building the daily reminder list

Your loan system decides who gets a reminder, and the campaign only places the calls. Each morning, your system selects the instalments due in two days and uploads them as a campaign file. The file needs a phone_number column, and every other column, such as first_name, amount_due and due_date, becomes a variable the agent can use.

Calling hours on a campaign follow a single time zone, so a borrower list that spans the country becomes one campaign per zone, each with its own window. You set the retries (0 to 10) and choose whether a busy line, no answer or voicemail gets another try. Campaigns keep no count per borrower across campaigns, so your own list decides how often anyone hears from you.

Borrowers pay after the file is built. Pre-Call Data Fetch, set to Outbound calls only, asks your system for the current amount and paid status once the call connects. A borrower who paid that morning hears thanks and a goodbye, never the old amount.

Dograh

Open Source Alternative to Vapi / Retell

Self-hosted voice agent platform — no per-minute fees

dograh-hq/dograh

Star on GitHub

A short script for the reminder call

A reminder call should take well under a minute, and each line has a fixed place. The opening goes in the Greeting Text on the Start Call node, which plays word for word:

"Hi {{first_name | there}}, this is Plumleaf Pay calling about your Plumleaf Pay plan. If you need us, our number is +1415555XXXX. Am I speaking with {{first_name | there}}?"

The lender's exact name and a callback number belong at the start, and the fallback after the bar covers a missing name. Allow Greeting Interruption is on by default, so switch it off and the opening plays in full. The greeting can be a pre-recorded clip in a real person's voice, with text-to-speech used for the lines that carry the amount.

Next, the prompt tells the agent to ask for an approved check, such as a date of birth or the last digits of the account number. Only after the borrower passes does the agent read the instalment, using {{amount_due}} and {{due_date}} from the list or the fresh lookup. A line such as "Your next Plumleaf Pay payment of $37.50 comes out on Friday. Will the money be in your account by then?" keeps the call to one question. A yes ends the call politely. A no, or a question about the date, moves to the next section.

When the borrower asks to move the date

The agent never moves a due date or promises one, because only your lending rules can approve a change. When the borrower asks, the agent says a team member will confirm, and an HTTP API tool writes the request to your system with the date they asked for, as they stated it. Pass the call's workflow_run_id as a Preset Parameter, which lets your system ignore a duplicate request if the tool fires twice.

Staff answer the request under your rules, and your system sends the written confirmation. Any payment link comes from your own system, by text or email, and the borrower pays on your payment page. If a team member is free during calling hours, Transfer Call can connect the borrower on Twilio, Telnyx, Plivo, Cloudonix or Asterisk ARI, after the agent writes the request first.

A borrower on a call asks to move a payment date. The agent writes the request, with the date they asked for, to the lender's system through an HTTP API tool and says a team member will confirm. A staff member approves or declines it under the lender's rules. The system then sends a written confirmation to the borrower's phone.
A date the agent promises on the call is one your staff may have to break, so QA checks a sample of calls for any agent that agreed to a new date. If a team member is free during calling hours, Transfer Call can connect the borrower, but only after the request is written.

When the pull fails anyway, the next call is a recovery call in your own name, covered in our post on missed-payment recovery in BNPL. A borrower who cannot pay the full instalment moves to a catch-up plan, set up as in AI voice agents for BNPL repayment plan setup.

Join the Dograh Community

Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.

Voicemail, stop requests and checking calls

Voicemail handling is off by default. Once it is set to Leave a message, the agent plays one fixed message to every voicemail, so keep it to the lender's name and the callback number, with no amount and no date. Anyone in the household can play it back.

A borrower can ask to stop the calls in any reasonable way, and the request is honoured within 10 business days. The prompt tells the agent to confirm the request, write it to your list through the HTTP API tool and end the call politely. With call disposition extraction switched on, the finished call is also tagged do_not_call, and your system keeps that number off the next list.

Finally, check the calls you have already placed. Run QA on a random sample, and replace its System Prompt with checks such as whether the amount came before the identity check passed or the agent agreed to a new date. A flagged call goes to a person the same week.

Glossary

Autopay pull
The scheduled charge a BNPL lender takes from the borrower's card or bank account on each due date. A reminder call aims to get the money in place before it runs.
Due-date notice
A written notice of an upcoming payment. New York's proposed BNPL rules would require one at least 7 days before the due date before any late fee, and a phone call does not count as that notice.
Greeting Text
The fixed opening on Dograh's Start Call node, spoken word for word as the call connects. The reminder puts the lender's name and a callback number here, with nothing about money.
Call disposition
The single outcome an AI step gives a finished call, such as callback_requested or do_not_call. It records what happened, and your own list decides who is called next.

Frequently Asked Questions

Get started with Dograh

Build, deploy, and scale AI agents with Dograh. Join the community of developers building the future.