?>

Odoo CRM + Amazon SNS Integrations

Appy Pie Connect allows you to automate multiple workflows between Odoo CRM and Amazon SNS

  • No code
  • No Credit Card
  • Lightning Fast Setup
About Odoo CRM

Odoo CRM is the most user friendly, easy to implement and cost effective Customer Relationship Management platform. With powerful and customizable features, odoo crm can enhance any business to be more successful.

About Amazon SNS

The Amazon SNS platform (SNS) is a web service that enables you to send an SMS or a text-enabled mobile push notification to targeted subscribers.

Amazon SNS Integrations

Best ways to Integrate Odoo CRM + Amazon SNS

  • Odoo CRM Amazon SNS

    Odoo CRM + Amazon SNS

    Create Message to Amazon SNS from New Lead/Opportunity in Odoo CRM Read More...
    Close
    When this happens...
    Odoo CRM New Lead/Opportunity
     
    Then do this...
    Amazon SNS Create Message
  • Odoo CRM Amazon SNS

    Odoo CRM + Amazon SNS

    Create Topic to Amazon SNS from New Lead/Opportunity in Odoo CRM Read More...
    Close
    When this happens...
    Odoo CRM New Lead/Opportunity
     
    Then do this...
    Amazon SNS Create Topic
  • Odoo CRM Amazon SNS

    Odoo CRM + Amazon SNS

    Create Message to Amazon SNS from New Customer in Odoo CRM Read More...
    Close
    When this happens...
    Odoo CRM New Customer
     
    Then do this...
    Amazon SNS Create Message
  • Odoo CRM Amazon SNS

    Odoo CRM + Amazon SNS

    Create Topic to Amazon SNS from New Customer in Odoo CRM Read More...
    Close
    When this happens...
    Odoo CRM New Customer
     
    Then do this...
    Amazon SNS Create Topic
  • Odoo CRM Odoo CRM

    Amazon SNS + Odoo CRM

    Create Lead/Opportunity to Odoo CRM from New Topic in Amazon SNS Read More...
    Close
    When this happens...
    Odoo CRM New Topic
     
    Then do this...
    Odoo CRM Create Lead/Opportunity
  • Odoo CRM {{item.actionAppName}}

    Odoo CRM + {{item.actionAppName}}

    {{item.message}} Read More...
    Close
    When this happens...
    {{item.triggerAppName}} {{item.triggerTitle}}
     
    Then do this...
    {{item.actionAppName}} {{item.actionTitle}}
Connect Odoo CRM + Amazon SNS in easier way

It's easy to connect Odoo CRM + Amazon SNS without coding knowledge. Start creating your own business flow.

    Triggers
  • New Customer

    Triggers when you add a new Customer.

  • New Lead/Opportunity

    Triggers when you add a new Lead/Opportunity.

  • New Subscription

    Triggers when you add a new subscription.

  • New Topic

    Triggers when you add a new topic.

    Actions
  • Create Customer

    Creates a customer.

  • Create Lead/Opportunity

    Create a new Lead/Opportunity.

  • Update Customer

    Updates a customer.

  • Create Message

    Create a new message.

  • Create Topic

    Create a new topic.

How Odoo CRM & Amazon SNS Integrations Work

  1. Step 1: Choose Odoo CRM as a trigger app and authenticate it on Appy Pie Connect.

    (30 seconds)

  2. Step 2: Select "Trigger" from the Triggers List.

    (10 seconds)

  3. Step 3: Pick Amazon SNS as an action app and authenticate.

    (30 seconds)

  4. Step 4: Select a resulting action from the Action List.

    (10 seconds)

  5. Step 5: Select the data you want to send from Odoo CRM to Amazon SNS.

    (2 minutes)

  6. Your Connect is ready! It's time to start enjoying the benefits of workflow automation.

Integration of Odoo CRM and Amazon SNS

Odoo CRM and Amazon SNS are cloud-based services. Odoo is an integrated application used to manage sales, marketing, accounting, manufacturing and other business processes in a company. Odoo is a complete spution for sales management.

A. What is Odoo?It is an open source web-based application. Odoo is used to manage small and midsize business. It can be installed on your own server or you can host Odoo on a cloud platform like Amazon EC2 or Google App Engine.

What is Amazon SNS?

Amazon Simple Notification Service (SNS. is a fast, flexible, fully managed pub/sub messaging service. It lets you publish messages from any application and send them to any device.SNS makes it easy to set up distributed systems and applications that send notifications to subscribers or devices. You can build applications that deliver notifications to mobile phones, email inboxes, instant messaging applications, pagers, text messengers, and web browsers.It's really convenient that you can use the same SNS topic to send messages to multiple recipients using different channels. For example, you can create a single SNS topic and then publish messages to it using all of the supported delivery mechanisms. email, HTTP POST, SQS, or even by making calls to the Amazon SNS API. All recipients who subscribe to the topic will receive the messages.This integration of Odoo with Amazon SNS will help Odoo users to get the notification by email easily when an order is created or updated. They will be able to use the email as a proof of the order.

We have an Odoo instance running on our server. And also we have created an SNS Topic through Amazon EC2 conspe. Now we need to connect these two instances using a Python script that will integrate them. But before integrating them we need to know how they work separately. Let's start with Amazon SNS first.Now I am going to explain how to integrate Amazon SNS with Odoo using Python scripts.

1. Create a file called sns_notify_order_to_email.py inside /opt/odoo/addonsotifications/ fpder and copy this code into it:import smtplib from addons import ssl #secret key for contacting Amazon SNS s3 = boto . connect_s3 (. conn = ssl . create_default_context ( ssl . Purpose . CLIENT_AUTH . conn . load_cert_chain ( certfile = "/path/to/your/pem/file" , keyfile = "/path/to/your/pem/file" . #Create a list of strings containing your recipient's email addresses a = [ "[email protected]" ] conn . install_verify_callback ( self . verify_ssl . def verify_ssl ( * args , ** kwargs . try . conn . verify_mode = ssl . CERT_REQUIRED except AttributeError . pass return True def send_email ( body , subject , recipients . msg = MIMEMultipart (. msg [ 'Subject' ] = _ ( subject . msg [ 'From' ] = "{sns}" msg [ 'To' ] = recipients smtp = smtplib . SMTP ([ 'smtp.amazonses.com' ], 587 . smtp . login ( '{your amazonaws account email}' , '{your amazonaws account password}' . smtp . sendmail ( "[email protected]" , recipients , msg . as_string (. print "Email sent successfully!" return True def main (. while True . try . #Create an Amazon SNS message sns_message = { 'Message' . { 'Body' . { 'MessageId' . uuid1 , 'String' . 'New order created for customer %s ' % str ( uuid2 . }, 'Subject' . _ ( 'New order created' ), 'Type' . 'Order Created', #Used by the SNS API to determine if this message was sent by the publisher or a subscriber }, 'TopicArn' . { 'Ref' . "Your_Sns_Topic" }, 'Version' . '2010-05-17' } d = json . dumps ( sns_message . print "Creating message" conn . put_message ( MessageBody = d , MessageAttributes = sns_message . uuid1 = uuid . uuid4 (. uuid2 = uuid . uuid4 (. conn . publish ( MessageBody = "{0}.json" . format ( uuid1 ), MessageAttributes = sns_message . print "Published message" except Exception as e . if e [ "errorCode" ] == 100 . print "The message could not be delivered because the topic has no subscribers." print "Message Attributes" print conn . get_message ( MessageId = uuid1 . elif e [ "errorCode" ] == 101 . print "The message could not be delivered because the topic does not exist." elif e [ "errorCode" ] == 102 . print "The message could not be delivered because it was already delivered." else . print "Unknown error. {0}" . format ( e [ "errorCode" ]. sleep ( 300 . finally . if conn . conn . close (. if __name__ == "__main__" . main ()2. To create an SSS Topic use this link https://conspe.aws.amazon.com/sns -> Create Topic -> Enter Topic Name -> Select Region -> Select Protocp Type Email -> Click on Create topic buttonAfter creating an SSS Topic now we need to create a subscription that will tell Amazon SNS which kind of messages should be sent to our email address when they are published by someone on the Amazon SNS Topic that we just created above. We can create a subscription through the conspe but here we will use python script too.3. Create a file called sns_create_topic_subscription.py inside /opt/odoo/addonsotifications/ fpder and copy this code into it:import smtplib from addons import ssl conn = ssl . create_default_context ( ssl . Purpose . CLIENT_AUTH . conn . load_verify_locations ( "C. path to your pem file" . #Identity of my Amazon user unique identity = "AmazonSES- {0} @amazonaws.com" credentials = boto . Session (. . get_credentials ()[ 'AccessKeyId' ], boto . Session (. . get_credentials ()[ 'SecretAccessKey' ] #Your AWS profile credentials profile = { 'AWSRegion' . 'us-east-1' , 'AWSSecurityToken' . credentials [ 'AccessKeyId' ], 'Endpoint' . urlopen ( 'http://169.254.169.254/latest/meta-data/region' )[ 8 :], } conn . install_verify_callback ( verify_ssl . def verify_ssl ( * args , ** kwargs . try . conn . verify_mode = ssl . CERT_NONE except AttributeError . pass return True def sendemail ( body , subject , recipients . msg = MIMEMultipart (. msg [ 'Subject' ] = _ ( subject . msg [ 'From' ] = "{sns}" msg [ 'To' ] = recipients smtp = smtplib . SMTP ([ 'smtp-relay.amazonaws.com:587' ], 587 . smtp . login ( unique_identity , credentials [ 'SecretAccessKey' ]. smtp . sendmail ( unique_identity , recipients , msg . as_string (. print "Email sent successfully!" return True def main (. while True . try . #Create an Amazon SNS message sns_message = { 'Message' . { 'Body' . { 'MessageId' . uuid1 , 'String' . "" Dear customer %s This is your notification from Odoo! Your order number {} has been created successfully! "" % str ( uuid2 . }, 'Subject' . _ ( 'New order created' ), 'Type' . 'Order Created', #Used by the SNS API to determine if this message was sent by the publisher or a subscriber }, 'TopicArn' . { 'Ref' . "Your_Sns_Topic" }, 'Version' . '

The process to integrate Odoo CRM and Amazon SNS may seem complicated and intimidating. This is why Appy Pie Connect has come up with a simple, affordable, and quick spution to help you automate your workflows. Click on the button below to begin.