Skip to main content
Solved

How to create automated monthly statements


Forum|alt.badge.img

Which APIs would you recommend using if I want to take what’s manual today (steps below), and work with our engineering team to automate it? 

Existing flow:

  • At our company, we close statements each month after reconciling our bank statement with the database ledger
  • Once everything is verified I generate the email and names of everyone in last month’s statement
  • I upload the CSV into Klaviyo and create a tag, example: “August2024_MonthlyStatement”
  • I create the campaign by duplicating the previous statement email
  • I add the audience, make some minor changes (like editing the month, example “Your August 2024 Statement”
  • Hit send

 

We want to start making it automated from step two. So once we create the list, it’ll get sent to Klaviyo, audience will be correctly tagged, the monthly statement campaign will run with the right copy, and send.

Is this possible? 

Best answer by Byrne C

Hey ​@fundify!

Thanks for posting this question in the community!

Most of the process you mentioned can be done via API. I’ll lay out which APIs might work best for the different steps in this process.

  1. You’ll want to start by creating a list, using our Create List API endpoint.
  2. After that, the profiles will need to be added to your list. Use the Subscribe Profiles endpoint if you want these profiles subscribed, or the Add Profiles to List endpoint, if you simply want them in your list.
  3. From here, you can begin setting up your campaign. I’d recommend checking our our Campaigns API document, which goes into detail on how to create a campaign via API. You’ll want to start using the Create Campaign endpoint.
  4. To update the template that the campaign uses, you’d use the Update Template endpoint. From there, assign the template to the campaign using the Assign Template to Campaign Message endpoint.
  5. Finally, once you’re ready to send the campaign, use the Send Campaign endpoint.

Let me know if I can answer any additional questions regarding this, and best of luck!

-Byrne

View original
Did this topic or the replies in the thread help you find an answer to your question?

5 replies

MANSIR2094
Problem Solver IV
Forum|alt.badge.img+12
  • Problem Solver IV
  • 164 replies
  • January 8, 2025

Hello ​@fundify 

Yes, automating your process is possible using Klaviyo’s API and potentially additional integrations. To streamline the flow:

 

1. Use Klaviyo’s Lists & Segments API to automate creating and tagging the list based on your reconciled CSV.

 

2. Use the Campaigns API to duplicate the previous email template, update the content dynamically (e.g., the month), and schedule it for sending.

 

You’ll need to work with your engineering team to script these steps, ensuring data flows seamlessly from your database or CSV into Klaviyo. For a detailed implementation or assistance, feel free to reach out.

 


Christiannoerbjerg
Expert Problem Solver II
Forum|alt.badge.img+12

Hi ​@fundify 

Thank you for posting in the Community!

Yes, it's possible to automate the process using APIs:

Step 1: Automatically send list to Klaviyo:

  • API to Use: Klaviyo List API
  • Automate the process of uploading your CSV to create/update a list in Klaviyo. Use the API to:
    • Create a new list for the month (e.g., "August2024_MonthlyStatement").
    • Add members (from your database or CSV) to this list programmatically.

Step 3: Tag audience correctly

  • API to Use: Klaviyo Tags API
  • If you use tags to categorize lists, you can leverage Klaviyo's tags functionality via the API to assign the proper tag (e.g., “Monthly Statement”).

Step 4: Duplicate and update the campaign:

  • API to Use: Klaviyo Campaign API
  • Use the Campaigns API to:
    1. Duplicate an existing campaign template.
    2. Update the campaign's content dynamically using variables like the month (e.g., "Your August 2024 Statement").
    3. Set the new list/audience as the target for the campaign.

Step 5: Schedule or send the campaign:

  • API to Use: Klaviyo Campaign API
  • After updating the campaign, schedule it for a specific time or send it immediately.

Hope that helps! :-) 

Christian Nørbjerg Enger
Partner & CPO
Web: Segmento.dk
LinkedIn: @christianfromsegmento
Voldbjergvej 22b, 8240 Risskov


Byrne C
Community Manager
Forum|alt.badge.img+10
  • Community Manager
  • 56 replies
  • Answer
  • January 8, 2025

Hey ​@fundify!

Thanks for posting this question in the community!

Most of the process you mentioned can be done via API. I’ll lay out which APIs might work best for the different steps in this process.

  1. You’ll want to start by creating a list, using our Create List API endpoint.
  2. After that, the profiles will need to be added to your list. Use the Subscribe Profiles endpoint if you want these profiles subscribed, or the Add Profiles to List endpoint, if you simply want them in your list.
  3. From here, you can begin setting up your campaign. I’d recommend checking our our Campaigns API document, which goes into detail on how to create a campaign via API. You’ll want to start using the Create Campaign endpoint.
  4. To update the template that the campaign uses, you’d use the Update Template endpoint. From there, assign the template to the campaign using the Assign Template to Campaign Message endpoint.
  5. Finally, once you’re ready to send the campaign, use the Send Campaign endpoint.

Let me know if I can answer any additional questions regarding this, and best of luck!

-Byrne


Forum|alt.badge.img
  • Author
  • Contributor II
  • 3 replies
  • January 13, 2025

Thank you for your help everyone! I’m going to try them in the next 10 days and report back. 


Forum|alt.badge.img
  • Author
  • Contributor II
  • 3 replies
  • January 30, 2025

This was successful following everyone’s comments. Thank you!