Messenger Platform

Receipt template

Updated: Apr 22, 2026
The receipt template allows you to send an order confirmation as a structured message. The template may include an order summary, payment details, and shipping information.

Request URI

https://graph.facebook.com/v25.0/me/messages?access_token={PAGE_ACCESS_TOKEN}

Payload properties

PropertyTypeDescription
template_type
String
Must be receipt.
sharable
Boolean
Optional. Set to true to enable the native share button in Messenger for the template message. Defaults to false.
recipient_name
String
The recipient’s name.
merchant_name
String
Optional. The merchant’s name. If present this is shown as logo text.
order_number
String
The order number. Must be unique.
currency
String
The currency of the payment.
payment_method
String
The payment method used. Providing enough information for the customer to decipher which payment method and account they used is recommended. This can be a custom string, such as “Visa 1234”.
timestamp
String
Optional. Timestamp of the order in seconds.
elements
Array
Optional. Array of a maximum of 100 element objects that describe items in the order. Sort order of the elements is not guaranteed.
address
Object
Optional. The shipping address of the order. See address properties below.
summary
Object
The payment summary. See summary properties below.
adjustments
Array
Optional. An array of adjustment objects that describe payment adjustments, such as discounts.

address properties

PropertyTypeDescription
street_1
String
The street address, line 1.
street_2
String
Optional. The street address, line 2.
city
String
The city name of the address.
postal_code
String
The postal code of the address.
state
String
The state abbreviation for U.S. addresses, or the region/province for non-U.S. addresses.
country
String
The two-letter country abbreviation of the address.

summary properties

The property values of the summary object should be valid, well-formatted decimal numbers, using . (dot) as the decimal separator. Most currencies only accept up to 2 decimal places.
PropertyTypeDescription
subtotal
Number
Optional. The sub-total of the order.
shipping_cost
Number
Optional. The shipping cost of the order.
total_tax
Number
Optional. The tax of the order.
total_cost
Number
The total cost of the order, including sub-total, shipping, and tax.

adjustment properties

PropertyTypeDescription
name
String
Required if the adjustments array is set. Name of the adjustment.
amount
Number
Required if the adjustments array is set. The amount of the adjustment.

element properties

PropertyTypeDescription
title
String
The name to display for the item.
subtitle
String
Optional. The subtitle for the item, usually a brief item description.
quantity
Number
Optional. The quantity of the item purchased.
price
Number
The price of the item. For free items, 0 is allowed.
currency
String
Optional. The currency of the item price.
image_url
String
Optional. The URL of an image to be displayed with the item.

Sample request

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"<PSID>"
  },
  "message":{
    "attachment":{
      "type":"template",
      "payload":{
        "template_type":"receipt",
        "recipient_name":"Stephane Crozatier",
        "order_number":"12345678902",
        "currency":"USD",
        "payment_method":"Visa 2345",
        "order_url":"http://originalcoastclothing.com/order?order_id=123456",
        "timestamp":"1428444852",
        "address":{
          "street_1":"1 Hacker Way",
          "street_2":"",
          "city":"Menlo Park",
          "postal_code":"94025",
          "state":"CA",
          "country":"US"
        },
        "summary":{
          "subtotal":75.00,
          "shipping_cost":4.95,
          "total_tax":6.19,
          "total_cost":56.14
        },
        "adjustments":[
          {
            "name":"New Customer Discount",
            "amount":20
          },
          {
            "name":"$10 Off Coupon",
            "amount":10
          }
        ],
        "elements":[
          {
            "title":"Classic White T-Shirt",
            "subtitle":"100% Soft and Luxurious Cotton",
            "quantity":2,
            "price":50,
            "currency":"USD",
            "image_url":"http://originalcoastclothing.com/img/whiteshirt.png"
          },
          {
            "title":"Classic Gray T-Shirt",
            "subtitle":"100% Soft and Luxurious Cotton",
            "quantity":1,
            "price":25,
            "currency":"USD",
            "image_url":"http://originalcoastclothing.com/img/grayshirt.png"
          }
        ]
      }
    }
  }
}' "https://graph.facebook.com/v25.0/me/messages?access_token=<PAGE_ACCESS_TOKEN>"

Sample response

{
  "recipient_id": "1254477777772919",
  "message_id": "AG5Hz2Uq7tuwNEhXfYYKj8mJEM_QPpz5jdCK48PnKAjSdjfipqxqMvK8ma6AC8fplwlqLP_5cgXIbu7I3rBN0P"
}

Best practices

  • Continue to keep people informed. After the receipt is delivered, send timely updates that contain shipping and delivery confirmation.
  • Do not use the receipt template to communicate info unrelated to purchases. It should only be used to confirm a previous transaction.