import axios from "axios"; // or `const axios = require("axios")` for CommonJS
export async function sendWhatsAppTemplate(toPhoneE164, values) {
const phoneNumberId = process.env.WHATSAPP_PHONE_NUMBER_ID;
const accessToken = process.env.WHATSAPP_ACCESS_TOKEN;
const url = `https://graph.facebook.com/v18.0/${phoneNumberId}/messages`;
const headers = {
Authorization: `Bearer ${accessToken}`,
"Content-Type": "application/json",
};
const data = {
messaging_product: "whatsapp",
to: toPhoneE164,
type: "template",
template: {
name: "logiyatra_tender_notification",
language: {
code: "hi",
},
components: [
{
type: "header",
parameters: [
{
type: "image",
image: {
link: "https://i.postimg.cc/90J3tYDM/logourl.png",
},
},
],
},
{
type: "body",
parameters: [
{
type: "text",
text: values.dispatch_location,
parameter_name: "dispatch_location",
},
{
type: "text",
text: values.delivery_from,
parameter_name: "delivery_from",
},
{
type: "text",
text: values.delivery_to,
parameter_name: "delivery_to",
},
{
type: "text",
text: values.start_datetime,
parameter_name: "start_datetime",
},
{
type: "text",
text: values.end_datetime,
parameter_name: "end_datetime",
},
],
},
],
},
};
try {
const response = await axios.post(url, data, { headers });
return response.data;
} catch (error) {
console.error(
"❌ Failed to send WhatsApp template:",
error.response?.data || error.message
);
}
}
Comments