Our customers love us

jooble viessmann puma samsung"/ lot swatch karcher PWC radisson tata jackwolfskin sofitel
Easy setup using the SMTP protocol

Easy setup using the SMTP protocol

Reliable servers and dedicated IP addresses

Reliable servers and dedicated IP addresses

Flexible API for developers

Flexible API for developers

24/7 live chat support

24/7 live chat support

How to use SMTP for business

SMTP is the easiest way to start sending transactional email campaigns to confirm registration, provide order updates, or thank a client for a purchase

Send transactional emails Image 1 Send transactional emails Image 2 Send transactional emails Image 3

Send transactional emails

Integrate an SMTP server into your CMS, CRM, or website builder to send emails directly to your customers without additional configuration in the email service.

Your clients will receive messages instantly, even if you have thousands of orders daily.

Explore detailed reports in your account Image 1 Explore detailed reports in your account Image 2

Explore detailed reports in your account

Monitor the number of messages sent, analyze your conversion, click-through, and unsubscribe rate, and dive into many other details to strengthen the quality of your emails sent via SMTP.
Use free transactional email templates Image 1 Use free transactional email templates Image 2

Use free transactional email templates

You can send transactional emails to clients via API using a template created with SendPulse. Personalize your emails by including relevant customer data from your website or CRM, for example, name, order number, shipping date, or payment status, to add value to your communication with clients.

How to use the SMTP service API for email campaigns


use Sendpulse\RestApi\ApiClient;
use Sendpulse\RestApi\Storage\FileStorage;

$smtpSendMailResult = (new ApiClient('MY_API_ID', 'MY_API_SECRET', new FileStorage()))->post('smtp/emails', [
    'email' => [
        'html' => base64_encode('<p>Hello!</p>'),
        'text' => 'text',
        'subject' => 'Mail subject',
        'from' => ['name' => 'API package test', 'email' => 'from@test.com'],
        'to' => [['name' => 'to', 'email' => 'to@test.com']],
        'attachments_binary' => [
            'attach_image.jpg' => base64_encode(file_get_contents('../storage/attach_image.jpg'))


sample.php hosted with ❤ by

# SendPulse's Ruby Library: https://github.com/sendpulse/sendpulse-rest-api-ruby
require './api/sendpulse_api'

email = {
 html: '<p>Your email content goes here<p>',
 text: 'Your email text version goes here',
 subject: 'Testing SendPulse API',
 from: { name: 'Your Sender Name', email: 'your-sender-email@gmail.com' },
 to: [
   name: "Subscriber's name",
   email: 'subscriber@gmail.com'

# SendPulse's Python Library: https://github.com/sendpulse/sendpulse-rest-api-python
from pysendpulse import PySendPulse
if __name__ == "__main__":
    TOKEN_STORAGE = 'memcached'
    email = {
        'subject': 'This is the test task from REST API',
        'html': '<p>This is a test task from https://sendpulse.com/api REST API!<p>',
        'text': 'This is a test task from https://sendpulse.com/api REST API!',
        'from': {'name': 'John Doe', 'email': 'john.doe@example.com'},
        'to': [
            {'name': 'Jane Roe', 'email': 'jane.roe@example.com'}
// SendPulse's Java Library https://github.com/sendpulse/sendpulse-rest-api-java
import com.sendpulse.restapi.Sendpulse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

public class Example {
    public static void main(String[] args) {
        Sendpulse sendpulse = new Sendpulse(API_CLIENT_ID, API_CLIENT_SECRET);
        Map<String, Object> from = new HashMap<String, Object>();
        from.put("name", "Your Sender Name");
        from.put("email", "your-sender-email@gmail.com");

        ArrayList<Map> to = new ArrayList<Map>();
        Map<String, Object> elementto = new HashMap<String, Object>();
        elementto.put("name", "Subscriber's name");
        elementto.put("email", "subscriber@gmail.com");

        Map<String, Object> emaildata = new HashMap<String, Object>();
        emaildata.put("html","Your email content goes here");
        emaildata.put("text","Your email text version goes here");
        emaildata.put("subject","Testing SendPulse API");

        Map<String, Object> result = (Map<String, Object>) sendpulse.smtpSendMail(emaildata);
        System.out.println("Result: " + result);

sample.java hosted with ❤ by

// SendPulse's Node.JS Library: https://github.com/sendpulse/sendpulse-rest-api-node.js
var sendpulse = require("./api/sendpulse.js");

var email = {
  "html" : "<p>Your email content goes here</p>",
  "text" : "Your email text version goes here",
  "subject" : "Testing SendPulse API",
  "from" : {
    "name" : "Your Sender Name",
    "email" : "your-sender-email@gmail.com"
  "to" : [ {
    "name" : "Subscriber's name",
    "email" : "subscriber@gmail.com"
  } ]

var answerGetter = function answerGetter(data){

sendpulse.smtpSendMail(answerGetter, email);
#import "Sendpulse.h" // SendPulse's Obj-C Library https://github.com/sendpulse/sendpulse-rest-api-objective-c

- (void)viewDidLoad {
    [super viewDidLoad];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(doSomethingWithTheData:) name:@"SendPulseNotification" object:nil];

    Sendpulse* sendpulse = [[Sendpulse alloc] initWithUserIdandSecret:userId :secret];

    NSDictionary *from = [NSDictionary dictionaryWithObjectsAndKeys:@"Your Sender Name", @"name", @"your-sender-email@gmail.com", @"email", nil];

    NSMutableArray* to = [[NSMutableArray alloc] initWithObjects:[NSDictionary dictionaryWithObjectsAndKeys:@"Subscriber's name", @"name", @"subscriber@gmail.com", @"email", nil], nil];

    NSMutableDictionary *emaildata = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"<b>Your email content goes here</b>", @"html", @"Your email text version goes here", @"text",@"Testing SendPulse API",@"subject",from,@"from",to,@"to", nil];

    [sendpulse smtpSendMail:emaildata];

- (void)doSomethingWithTheData:(NSNotification *)notification {
    NSMutableDictionary * result = [[notification userInfo] objectForKey:@"SendPulseData"];
    NSLog(@"Result: %@", result);
Read API documentation →

SMTP service features

Dedicated IP addresses

Dedicated IP addresses

We monitor the reputation of all IP addresses to ensure maximum deliverability.

DKIM and SPF signatures

DKIM and SPF signatures

Authenticate your company's sender domain with the help of special cryptographic signatures.

Servers you can trust

Servers you can trust

Send email campaigns via European data centers with SSL connection support.

Enhance your communication with customers by sending transactional emails via SMTP or API

You can read our detailed API documentation and find all the necessary settings for the SMTP server in your account

No credit card required

We will help you get the hang of the SendPulse services

We strive to make our SMTP service as intuitive and user-friendly as possible.

If you have any questions, you can contact our customer support or refer to our free resources.


Find out how to send email campaigns and manage your mailing lists.

24/7 Support
24/7 Support

Start a chat or fill out the form — we are here for you 24/7 and can assist our users in five languages.

Knowledge Base
Knowledge Base

Check out all the how-tos on using our SMTP service you will ever need.


Learn more about the limits on sending speed, traffic, and the number of used domains and IP addresses.

Don't have enough time to explore SendPulse's functionality by yourself?

Sign up for a free 20-minute demo. We will show you how to send transactional emails via SMTP or API and help you get started quickly.
Book a demo →
Let us help you convert leads into customers

Enhance your communication with customers


The Simple Mail Transfer Protocol is a method of exchanging information between a sender’s and a recipient’s servers. You can use the SendPulse SMTP server to send HTML emails without trying our other services and features.

An SMTP server allows you to send all sorts of transactional emails, e.g., confirmation emails, abandoned cart emails, shipping updates, notifications, etc. SendPulse’s SMTP server is reliable and has a high deliverability rate and sender reputation.

You need to register with SendPulse, fill in a simple form, and set up your authentication parameters. Follow the prompts, and remember that our customer support team is always here to help.

With SendPulse, you can send up to 12,000 emails for free each month. If you want to send more emails via our SMTP server, you need to choose between our monthly subscription plans and pay-as-you go plans. Learn more about our SMTP server pricing here.

Integrate email campaigns into your project right now

Send transactional emails instantly via SMTP or API with exceptional deliverability

12,000 emails per month for free