Etsy sale notifications
Parse Etsy sale emails
Etsy tells you about every sale by email. This layout reads the order number, the buyer, the ship-by date and the total, and lists each item with its quantity and price.
Use this layoutFree plan included: 2 layouts per endpoint.
- From
- Etsy <transaction@etsy.example>
- Subject
- You made a sale on Etsy! Order #3123456789
Congratulations! You made a sale. Order number: 3123456789 Buyer: Jane Doe Item: Hand-thrown mug Quantity: 2 Price: $36.00 Item: Linen napkins Quantity: 1 Price: $9.00 Order total: $45.00 Ship by: Nov 3, 2026
{
"parsed": {
"status": "matched",
"layout": {
"id": "etsy-sales",
"name": "Etsy sales"
},
"fields": {
"order": "3123456789",
"buyer": "Jane Doe",
"total": "45.00",
"ship_by": "Nov 3, 2026"
},
"lineItems": [
{
"item": "Hand-thrown mug",
"quantity": "2",
"price": "36.00"
},
{
"item": "Linen napkins",
"quantity": "1",
"price": "9.00"
}
]
}
}The layout
It matches the email by its subject, reads each field with an RE2 pattern, and turns the list into line items. Edit any of it in the endpoint's settings, where the preview tries it on an email you captured as you type.
{
"id": "etsy-sales",
"name": "Etsy sales",
"match": {
"conditions": [
{
"field": "email",
"name": "subject",
"op": "contains",
"value": "sale on Etsy"
}
]
},
"fields": [
{
"name": "order",
"from": "text",
"pattern": "Order number:\\s*(\\d+)"
},
{
"name": "buyer",
"from": "text",
"pattern": "Buyer:[ \\t]*([^\\r\\n]+)"
},
{
"name": "total",
"from": "text",
"pattern": "Order total:\\s*\\$?([0-9][0-9.,]*)"
},
{
"name": "ship_by",
"from": "text",
"pattern": "Ship by:[ \\t]*([^\\r\\n]+)"
}
],
"lineItems": {
"from": "text",
"pattern": "Item: (?P<item>[^\\r\\n]+)\\r?\\nQuantity: (?P<quantity>\\d+)\\r?\\nPrice: \\$?(?P<price>[0-9][0-9.,]*)"
}
}