Documentation Index
Fetch the complete documentation index at: https://docs.morf.health/docs/llms.txt
Use this file to discover all available pages before exploring further.
Events
Triggering Webhook Types
The following event types are associated with the Order event payload from Boulevard.Boulevard Order CompletedBoulevard Order Refund Closed
{
"applied_vouchers": [
{
"id": "urn:blvd:OrderVoucher:voucher123",
"voucher": {
"expires_on": "2024-12-31",
"id": "urn:blvd:Voucher:voucher123",
"redeemed_at": "2024-03-15T10:00:00Z",
"services": [
{
"category": {
"id": "urn:blvd:ServiceCategory:category123",
"name": "Massage Therapy"
},
"created_at": "2024-01-01T00:00:00Z",
"description": "60-minute therapeutic massage",
"id": "urn:blvd:Service:service123",
"is_active": true,
"name": "Deep Tissue Massage",
"updated_at": "2024-03-01T00:00:00Z"
}
]
}
}
],
"client": {
"email_address": "jane.smith@email.com",
"first_name": "Jane",
"id": "urn:blvd:Client:client123",
"last_name": "Smith",
"phone_number": "+15551234567"
},
"closed_at": "2024-03-15T12:00:00Z",
"closed_by": {
"email_address": "sarah.johnson@spa.com",
"first_name": "Sarah",
"id": "urn:blvd:Staff:staff123",
"last_name": "Johnson",
"phone_number": "+15551234567",
"role_name": "Massage Therapist"
},
"created_at": "2024-03-01T09:00:00Z",
"fee_lines": [
{
"absolute_amount_cents": 500,
"calculated_amount_cents": 500,
"calculated_tax_amount_cents": 45,
"id": "urn:blvd:OrderFeeLine:fee123",
"label": "Processing Fee",
"percentage_amount": 3.5,
"refunds": [
{
"id": "urn:blvd:FeeLineRefund:refund123",
"order_refund_id": "urn:blvd:OrderRefund:refund123",
"refund_amount_cents": 500,
"refunded_at": "2024-03-20T14:30:00Z"
}
],
"type": "ORDER_FEE_TYPE_BLVD_OFFSET"
}
],
"id": "urn:blvd:Order:order123",
"line_groups": [
{
"id": "urn:blvd:OrderLineGroup:group123",
"lines": [
{
"current_discount_amount_cents": 0,
"current_price_cents": 15000,
"current_subtotal_cents": 15000,
"discounts": [
{
"description": "First Time Client Discount",
"discount_amount_cents": 1500,
"discount_percentage": 10,
"discount_reason": {
"id": "urn:blvd:DiscountReason:reason123",
"is_hidden": false,
"name": "First Time Client"
},
"id": "urn:blvd:OrderDiscount:discount123"
}
],
"id": "urn:blvd:OrderLine:line123",
"initial_discount_amount_cents": 0,
"initial_price_cents": 15000,
"initial_subtotal_cents": 15000,
"quantity": 1
}
]
}
],
"location": {
"address": {
"city": "San Francisco",
"country": "US",
"line1": "1 Acacia Ave.",
"line2": "Apt 3a.",
"province": "Alberta",
"state": "CA",
"zip_code": "94117"
},
"external_id": "LOC001",
"id": "urn:blvd:Location:loc123",
"is_remote": false,
"name": "Downtown Spa",
"timezone": "America/New_York"
},
"note": "Birthday celebration package",
"number": "ORD-2024-001234",
"payment_groups": [
{
"id": "urn:blvd:OrderPaymentGroup:group123",
"is_independent_merchant": false,
"merchant_id": "merchant123",
"merchant_name": "Downtown Spa",
"payments": [
{
"id": "urn:blvd:OrderPayment:payment123",
"merchant_id": "merchant123",
"order_id": "urn:blvd:Order:order123",
"paid_amount_cents": 17850,
"payment_method_label": "Visa ending in 1234",
"refund_amount_cents": 0,
"refunds": [
{
"id": "urn:blvd:OrderPaymentRefund:refund123",
"is_full_refund": true,
"refund_amount_cents": 17850,
"refund_id": "refund123",
"refunded_at": "2024-03-20T14:30:00Z"
}
]
}
],
"total_cents": 17850,
"total_fees_cents": 500,
"total_paid_cents": 17850,
"total_unpaid_cents": 0
}
],
"refunds": [
{
"closed_at": "2024-03-20T14:30:00Z",
"closed_by": {
"email_address": "sarah.johnson@spa.com",
"first_name": "Sarah",
"id": "urn:blvd:Staff:staff123",
"last_name": "Johnson",
"phone_number": "+15551234567",
"role_name": "Massage Therapist"
},
"created_at": "2024-03-20T14:00:00Z",
"id": "urn:blvd:OrderRefund:refund123",
"number": "REF-2024-001234",
"payments": [
{
"id": "urn:blvd:OrderRefundPayment:payment123",
"order_payment_id": "urn:blvd:OrderPayment:payment123",
"refund_amount_cents": 15000,
"refund_limit_cents": 15000
}
],
"refund_reason": "ORDER_REFUND_REASON_CUSTOMER_REQUEST",
"refund_reason_text": "Customer changed mind",
"status": "ORDER_REFUND_STATUS_CLOSED",
"summary": {
"refund_amount_cents": 15000,
"refund_tax_cents": 1350,
"refund_total_cents": 16350
},
"updated_at": "2024-03-20T14:30:00Z"
}
],
"summary": {
"current_discount_amount_cents": 1500,
"current_fee_amount_cents": 500,
"current_gratuity_amount_cents": 2000,
"current_subtotal_cents": 15000,
"current_tax_amount_cents": 1350,
"current_total_cents": 17850,
"initial_discount_amount_cents": 1500,
"initial_fee_amount_cents": 500,
"initial_gratuity_amount_cents": 2000,
"initial_subtotal_cents": 15000,
"initial_tax_amount_cents": 1350,
"initial_total_cents": 17850,
"refund_amount_cents": 0
},
"updated_at": "2024-03-15T11:30:00Z"
}
{
"applied_vouchers": {
"id": "Unique identifier for the order voucher.",
"voucher": {
"expires_on": "The date when the voucher expires.",
"id": "Unique identifier for the voucher.",
"redeemed_at": "When the Voucher was redeemed.",
"services": {
"category": {
"id": "Unique identifier for the service category.",
"name": "Name of the service category."
},
"created_at": "The date and time when the service was created.",
"description": "Description of the service.",
"id": "Unique identifier for the service.",
"is_active": "Whether the service is active.",
"name": "Name of the service.",
"updated_at": "The date and time when the service was last updated."
}
}
},
"client": {
"email_address": "Client's email address.",
"first_name": "Client's first name.",
"id": "Unique identifier for the client in the Boulevard system.",
"last_name": "Client's last name.",
"phone_number": "Client's mobile phone number."
},
"closed_at": "The date and time when the order was closed.",
"closed_by": {
"email_address": "Email address of the staff member.",
"first_name": "First name of the staff member.",
"id": "Unique identifier for the staff member.",
"last_name": "Last name of the staff member.",
"phone_number": "Mobile phone number of the staff member.",
"role_name": "Name of the staff member's role."
},
"created_at": "The date and time when the order was created.",
"fee_lines": {
"absolute_amount_cents": "Absolute amount for the fee in cents. Null if percentage_amount is set.",
"calculated_amount_cents": "Current calculated amount for the fee in cents.",
"calculated_tax_amount_cents": "Current calculated tax amount for the fee in cents.",
"id": "Unique identifier for the fee line.",
"label": "Human-readable fee label.",
"percentage_amount": "Percentage amount for the fee. Null if absolute_amount_cents is set.",
"refunds": {
"id": "Unique identifier for the fee line refund.",
"order_refund_id": "ID of the order refund the fee was refunded on.",
"refund_amount_cents": "Amount of the fee refunded in cents.",
"refunded_at": "When the fee was refunded."
},
"type": "Machine-readable fee type."
},
"id": "Unique identifier for the order in the Boulevard system.",
"line_groups": {
"id": "Unique identifier for the line group.",
"lines": {
"current_discount_amount_cents": "Current discount amount in cents.",
"current_price_cents": "Current price in cents.",
"current_subtotal_cents": "Current subtotal in cents.",
"discounts": {
"description": "Description of the discount.",
"discount_amount_cents": "Discount amount in cents.",
"discount_percentage": "Discount percentage, if applicable.",
"discount_reason": {
"id": "Unique identifier for the discount reason.",
"is_hidden": "Whether the discount reason is hidden.",
"name": "Name of the discount reason."
},
"id": "Unique identifier for the discount."
},
"id": "Unique identifier for the order line.",
"initial_discount_amount_cents": "Initial discount amount in cents.",
"initial_price_cents": "Initial price in cents.",
"initial_subtotal_cents": "Initial subtotal in cents.",
"quantity": "Quantity of the item."
}
},
"location": {
"address": {
"city": "City of the Address",
"country": "Country for the Address.",
"line1": "Line 1 of the Address",
"line2": "Line 2 of the Address",
"province": "Province of the Address.",
"state": "State of the Address.",
"zip_code": "Zip (postal) code for the Address."
},
"external_id": "External identifier for the location.",
"id": "Unique identifier for the location.",
"is_remote": "Indicates that the location is a remote location, and that appointments for this location are carried out remotely.",
"name": "Name of the location.",
"timezone": "Timezone associated with the location."
},
"note": "An optional note tied to the order.",
"number": "Unique order number for the business.",
"payment_groups": {
"id": "Unique identifier for the payment group.",
"is_independent_merchant": "Whether this is an independent merchant.",
"merchant_id": "ID of the merchant.",
"merchant_name": "Name of the merchant.",
"payments": {
"id": "Unique identifier for the payment.",
"merchant_id": "ID of the merchant.",
"order_id": "ID of the order.",
"paid_amount_cents": "Amount paid in cents.",
"payment_method_label": "Human-readable label for the payment method.",
"refund_amount_cents": "The total amount refunded, if any, in cents.",
"refunds": {
"id": "Unique identifier for the payment refund.",
"is_full_refund": "Whether this is a full refund.",
"refund_amount_cents": "Amount refunded in cents.",
"refund_id": "ID of the refund.",
"refunded_at": "When the refund was processed."
}
},
"total_cents": "Total amount for this payment group in cents.",
"total_fees_cents": "Total fees for this payment group in cents.",
"total_paid_cents": "Total paid for this payment group in cents.",
"total_unpaid_cents": "Total unpaid for this payment group in cents."
},
"refunds": {
"closed_at": "When the refund was closed.",
"closed_by": {
"email_address": "Email address of the staff member.",
"first_name": "First name of the staff member.",
"id": "Unique identifier for the staff member.",
"last_name": "Last name of the staff member.",
"phone_number": "Mobile phone number of the staff member.",
"role_name": "Name of the staff member's role."
},
"created_at": "The date and time when the order refund was created.",
"id": "Unique identifier for the order refund.",
"number": "Refund number.",
"payments": {
"id": "Unique identifier for the refund payment.",
"order_payment_id": "When this payment is one of the original payments on the order, this ID is present and can be used to read more information on the payment.",
"refund_amount_cents": "Total amount to be refunded to this payment method, including any tax, in cents.",
"refund_limit_cents": "Maximum amount that can be refunded to this payment method in cents."
},
"refund_reason": "Value that describes why this refund was made. When the reason is OTHER, refund_reason_text should also be set.",
"refund_reason_text": "Additional description, usually available when the refund reason is OTHER.",
"status": "Closed status of the refund.",
"summary": {
"refund_amount_cents": "Total refund amount in cents.",
"refund_tax_cents": "Refund tax amount in cents.",
"refund_total_cents": "Total refund including tax in cents."
},
"updated_at": "The date and time when the order refund was last updated."
},
"summary": {
"current_discount_amount_cents": "Current discount amount in cents.",
"current_fee_amount_cents": "Current fee amount in cents.",
"current_gratuity_amount_cents": "Current gratuity amount in cents.",
"current_subtotal_cents": "Current subtotal in cents.",
"current_tax_amount_cents": "Current tax amount in cents.",
"current_total_cents": "Current total amount in cents.",
"initial_discount_amount_cents": "Initial discount amount in cents.",
"initial_fee_amount_cents": "Initial fee amount in cents.",
"initial_gratuity_amount_cents": "Initial gratuity amount in cents.",
"initial_subtotal_cents": "Initial subtotal in cents.",
"initial_tax_amount_cents": "Initial tax amount in cents.",
"initial_total_cents": "Initial total amount in cents.",
"refund_amount_cents": "Total refund amount in cents."
},
"updated_at": "The date and time when the order was last updated."
}
Payload Field Details
Hide fields
Hide fields
ID Unique identifier for the order in the Boulevard system.CEL
id
Example
"urn:blvd:Order:order123"
Unique order number for the business.
CEL
number
Example
"ORD-2024-001234"
HI An optional note tied to the order.CEL
note
Example
"Birthday celebration package"
Summary financial information for the order.
CEL
summary
Example
{
"current_discount_amount_cents": 1500,
"current_fee_amount_cents": 500,
"current_gratuity_amount_cents": 2000,
"current_subtotal_cents": 15000,
"current_tax_amount_cents": 1350,
"current_total_cents": 17850,
"initial_discount_amount_cents": 1500,
"initial_fee_amount_cents": 500,
"initial_gratuity_amount_cents": 2000,
"initial_subtotal_cents": 15000,
"initial_tax_amount_cents": 1350,
"initial_total_cents": 17850,
"refund_amount_cents": 0
}
Current discount amount in cents.
CEL
summary.current_discount_amount_cents
Example
1500
Current fee amount in cents.
CEL
summary.current_fee_amount_cents
Example
500
Current gratuity amount in cents.
CEL
summary.current_gratuity_amount_cents
Example
2000
Current subtotal in cents.
CEL
summary.current_subtotal_cents
Example
15000
Current tax amount in cents.
CEL
summary.current_tax_amount_cents
Example
1350
Current total amount in cents.
CEL
summary.current_total_cents
Example
17850
Initial discount amount in cents.
CEL
summary.initial_discount_amount_cents
Example
1500
Initial fee amount in cents.
CEL
summary.initial_fee_amount_cents
Example
500
Initial gratuity amount in cents.
CEL
summary.initial_gratuity_amount_cents
Example
2000
Initial subtotal in cents.
CEL
summary.initial_subtotal_cents
Example
15000
Initial tax amount in cents.
CEL
summary.initial_tax_amount_cents
Example
1350
Initial total amount in cents.
CEL
summary.initial_total_cents
Example
17850
Total refund amount in cents.
CEL
summary.refund_amount_cents
Example
0
Vouchers applied on this order.
CEL
applied_vouchers
Example
[
{
"id": "urn:blvd:OrderVoucher:voucher123",
"voucher": {
"expires_on": "2024-12-31",
"id": "urn:blvd:Voucher:voucher123",
"redeemed_at": "2024-03-15T10:00:00Z",
"services": [
{
"category": {
"id": "urn:blvd:ServiceCategory:category123",
"name": "Massage Therapy"
},
"created_at": "2024-01-01T00:00:00Z",
"description": "60-minute therapeutic massage",
"id": "urn:blvd:Service:service123",
"is_active": true,
"name": "Deep Tissue Massage",
"updated_at": "2024-03-01T00:00:00Z"
}
]
}
}
]
ID Mapped array of: Unique identifier for the order voucher.CEL
applied_vouchers.map(x, x.id)
Example
[
"urn:blvd:OrderVoucher:voucher123"
]
Mapped array of: The voucher details.
CEL
applied_vouchers.map(x, x.voucher)
Example
[
{
"expires_on": "2024-12-31",
"id": "urn:blvd:Voucher:voucher123",
"redeemed_at": "2024-03-15T10:00:00Z",
"services": [
{
"category": {
"id": "urn:blvd:ServiceCategory:category123",
"name": "Massage Therapy"
},
"created_at": "2024-01-01T00:00:00Z",
"description": "60-minute therapeutic massage",
"id": "urn:blvd:Service:service123",
"is_active": true,
"name": "Deep Tissue Massage",
"updated_at": "2024-03-01T00:00:00Z"
}
]
}
]
The client associated with the order.
CEL
client
Example
{
"email_address": "jane.smith@email.com",
"first_name": "Jane",
"id": "urn:blvd:Client:client123",
"last_name": "Smith",
"phone_number": "+15551234567"
}
ID Unique identifier for the client in the Boulevard system.CEL
client.id
Example
"urn:blvd:Client:client123"
PII Client’s first name.CEL
client.first_name
Example
"Jane"
PII Client’s last name.CEL
client.last_name
Example
"Smith"
PII Client’s email address.CEL
client.email_address
Example
"jane.smith@email.com"
PII Client’s mobile phone number.CEL
client.phone_number
Example
"+15551234567"
Fee lines applied to the order.
CEL
fee_lines
Example
[
{
"absolute_amount_cents": 500,
"calculated_amount_cents": 500,
"calculated_tax_amount_cents": 45,
"id": "urn:blvd:OrderFeeLine:fee123",
"label": "Processing Fee",
"percentage_amount": 3.5,
"refunds": [
{
"id": "urn:blvd:FeeLineRefund:refund123",
"order_refund_id": "urn:blvd:OrderRefund:refund123",
"refund_amount_cents": 500,
"refunded_at": "2024-03-20T14:30:00Z"
}
],
"type": "ORDER_FEE_TYPE_BLVD_OFFSET"
}
]
ID Mapped array of: Unique identifier for the fee line.CEL
fee_lines.map(x, x.id)
Example
[
"urn:blvd:OrderFeeLine:fee123"
]
Mapped array of: Human-readable fee label.
CEL
fee_lines.map(x, x.label)
Example
[
"Processing Fee"
]
Mapped array of: Machine-readable fee type.
CEL
type
Example
boulevard.v1.OrderFeeType.ORDER_FEE_TYPE_BLVD_OFFSET
Mapped array of: Absolute amount for the fee in cents. Null if percentage_amount is set.
CEL
fee_lines.map(x, x.absolute_amount_cents)
Example
[
500
]
Mapped array of: Percentage amount for the fee. Null if absolute_amount_cents is set.
CEL
fee_lines.map(x, x.percentage_amount)
Example
[
3.5
]
Mapped array of: Current calculated amount for the fee in cents.
CEL
fee_lines.map(x, x.calculated_amount_cents)
Example
[
500
]
Mapped array of: Current calculated tax amount for the fee in cents.
CEL
fee_lines.map(x, x.calculated_tax_amount_cents)
Example
[
45
]
Mapped array of: Refunds applied to this fee line.
CEL
fee_lines.map(x, x.refunds)
Example
[
[
{
"id": "urn:blvd:FeeLineRefund:refund123",
"order_refund_id": "urn:blvd:OrderRefund:refund123",
"refund_amount_cents": 500,
"refunded_at": "2024-03-20T14:30:00Z"
}
]
]
Line item groups for the order.
CEL
line_groups
Example
[
{
"id": "urn:blvd:OrderLineGroup:group123",
"lines": [
{
"current_discount_amount_cents": 0,
"current_price_cents": 15000,
"current_subtotal_cents": 15000,
"discounts": [
{
"description": "First Time Client Discount",
"discount_amount_cents": 1500,
"discount_percentage": 10,
"discount_reason": {
"id": "urn:blvd:DiscountReason:reason123",
"is_hidden": false,
"name": "First Time Client"
},
"id": "urn:blvd:OrderDiscount:discount123"
}
],
"id": "urn:blvd:OrderLine:line123",
"initial_discount_amount_cents": 0,
"initial_price_cents": 15000,
"initial_subtotal_cents": 15000,
"quantity": 1
}
]
}
]
ID Mapped array of: Unique identifier for the line group.CEL
line_groups.map(x, x.id)
Example
[
"urn:blvd:OrderLineGroup:group123"
]
Mapped array of: Lines in this group.
CEL
line_groups.map(x, x.lines)
Example
[
[
{
"current_discount_amount_cents": 0,
"current_price_cents": 15000,
"current_subtotal_cents": 15000,
"discounts": [
{
"description": "First Time Client Discount",
"discount_amount_cents": 1500,
"discount_percentage": 10,
"discount_reason": {
"id": "urn:blvd:DiscountReason:reason123",
"is_hidden": false,
"name": "First Time Client"
},
"id": "urn:blvd:OrderDiscount:discount123"
}
],
"id": "urn:blvd:OrderLine:line123",
"initial_discount_amount_cents": 0,
"initial_price_cents": 15000,
"initial_subtotal_cents": 15000,
"quantity": 1
}
]
]
The location where this transaction was made.
CEL
location
Example
{
"address": {
"city": "San Francisco",
"country": "US",
"line1": "1 Acacia Ave.",
"line2": "Apt 3a.",
"province": "Alberta",
"state": "CA",
"zip_code": "94117"
},
"external_id": "LOC001",
"id": "urn:blvd:Location:loc123",
"is_remote": false,
"name": "Downtown Spa",
"timezone": "America/New_York"
}
ID Unique identifier for the location.CEL
location.id
Example
"urn:blvd:Location:loc123"
Name of the location.
CEL
location.name
Example
"Downtown Spa"
ID External identifier for the location.CEL
location.external_id
Example
"LOC001"
Timezone associated with the location.
CEL
location.timezone
Example
"America/New_York"
PII Address of the location.CEL
location.address
Example
{
"city": "San Francisco",
"country": "US",
"line1": "1 Acacia Ave.",
"line2": "Apt 3a.",
"province": "Alberta",
"state": "CA",
"zip_code": "94117"
}
PII Line 1 of the AddressCEL
location.address.line1
Example
"1 Acacia Ave."
PII Line 2 of the AddressCEL
location.address.line2
Example
"Apt 3a."
City of the Address
CEL
location.address.city
Example
"San Francisco"
Province of the Address.
CEL
location.address.province
Example
"Alberta"
State of the Address.
CEL
location.address.state
Example
"CA"
Zip (postal) code for the Address.
CEL
location.address.zip_code
Example
"94117"
Country for the Address.
CEL
location.address.country
Example
"US"
Indicates that the location is a remote location, and that appointments for this location are carried out remotely.
CEL
location.is_remote
Example
false
Payment groups for the order.
CEL
payment_groups
Example
[
{
"id": "urn:blvd:OrderPaymentGroup:group123",
"is_independent_merchant": false,
"merchant_id": "merchant123",
"merchant_name": "Downtown Spa",
"payments": [
{
"id": "urn:blvd:OrderPayment:payment123",
"merchant_id": "merchant123",
"order_id": "urn:blvd:Order:order123",
"paid_amount_cents": 17850,
"payment_method_label": "Visa ending in 1234",
"refund_amount_cents": 0,
"refunds": [
{
"id": "urn:blvd:OrderPaymentRefund:refund123",
"is_full_refund": true,
"refund_amount_cents": 17850,
"refund_id": "refund123",
"refunded_at": "2024-03-20T14:30:00Z"
}
]
}
],
"total_cents": 17850,
"total_fees_cents": 500,
"total_paid_cents": 17850,
"total_unpaid_cents": 0
}
]
ID Mapped array of: Unique identifier for the payment group.CEL
payment_groups.map(x, x.id)
Example
[
"urn:blvd:OrderPaymentGroup:group123"
]
Mapped array of: Whether this is an independent merchant.
CEL
payment_groups.map(x, x.is_independent_merchant)
Example
[
false
]
Mapped array of: ID of the merchant.
CEL
payment_groups.map(x, x.merchant_id)
Example
[
"merchant123"
]
Mapped array of: Name of the merchant.
CEL
payment_groups.map(x, x.merchant_name)
Example
[
"Downtown Spa"
]
Mapped array of: Payments in this group.
CEL
payment_groups.map(x, x.payments)
Example
[
[
{
"id": "urn:blvd:OrderPayment:payment123",
"merchant_id": "merchant123",
"order_id": "urn:blvd:Order:order123",
"paid_amount_cents": 17850,
"payment_method_label": "Visa ending in 1234",
"refund_amount_cents": 0,
"refunds": [
{
"id": "urn:blvd:OrderPaymentRefund:refund123",
"is_full_refund": true,
"refund_amount_cents": 17850,
"refund_id": "refund123",
"refunded_at": "2024-03-20T14:30:00Z"
}
]
}
]
]
Mapped array of: Total amount for this payment group in cents.
CEL
payment_groups.map(x, x.total_cents)
Example
[
17850
]
Mapped array of: Total fees for this payment group in cents.
CEL
payment_groups.map(x, x.total_fees_cents)
Example
[
500
]
Mapped array of: Total paid for this payment group in cents.
CEL
payment_groups.map(x, x.total_paid_cents)
Example
[
17850
]
Mapped array of: Total unpaid for this payment group in cents.
CEL
payment_groups.map(x, x.total_unpaid_cents)
Example
[
0
]
Closed refunds against the order.
CEL
refunds
Example
[
{
"closed_at": "2024-03-20T14:30:00Z",
"closed_by": {
"email_address": "sarah.johnson@spa.com",
"first_name": "Sarah",
"id": "urn:blvd:Staff:staff123",
"last_name": "Johnson",
"phone_number": "+15551234567",
"role_name": "Massage Therapist"
},
"created_at": "2024-03-20T14:00:00Z",
"id": "urn:blvd:OrderRefund:refund123",
"number": "REF-2024-001234",
"payments": [
{
"id": "urn:blvd:OrderRefundPayment:payment123",
"order_payment_id": "urn:blvd:OrderPayment:payment123",
"refund_amount_cents": 15000,
"refund_limit_cents": 15000
}
],
"refund_reason": "ORDER_REFUND_REASON_CUSTOMER_REQUEST",
"refund_reason_text": "Customer changed mind",
"status": "ORDER_REFUND_STATUS_CLOSED",
"summary": {
"refund_amount_cents": 15000,
"refund_tax_cents": 1350,
"refund_total_cents": 16350
},
"updated_at": "2024-03-20T14:30:00Z"
}
]
ID Mapped array of: Unique identifier for the order refund.CEL
refunds.map(x, x.id)
Example
[
"urn:blvd:OrderRefund:refund123"
]
Mapped array of: Refund number.
CEL
refunds.map(x, x.number)
Example
[
"REF-2024-001234"
]
Mapped array of: Payment details for the order refund.
CEL
refunds.map(x, x.payments)
Example
[
[
{
"id": "urn:blvd:OrderRefundPayment:payment123",
"order_payment_id": "urn:blvd:OrderPayment:payment123",
"refund_amount_cents": 15000,
"refund_limit_cents": 15000
}
]
]
Mapped array of: Value that describes why this refund was made. When the reason is OTHER, refund_reason_text should also be set.
CEL
refund_reason
Example
boulevard.v1.OrderRefundReason.ORDER_REFUND_REASON_CUSTOMER_SERVICE
boulevard.v1.OrderRefundReason.ORDER_REFUND_REASON_DEFECTIVE_PRODUCT
boulevard.v1.OrderRefundReason.ORDER_REFUND_REASON_OTHER
boulevard.v1.OrderRefundReason.ORDER_REFUND_REASON_STAFF_ERROR
Mapped array of: Additional description, usually available when the refund reason is OTHER.
CEL
refunds.map(x, x.refund_reason_text)
Example
[
"Customer changed mind"
]
Mapped array of: Closed status of the refund.
CEL
status
Example
boulevard.v1.OrderRefundStatus.ORDER_REFUND_STATUS_CLOSED
boulevard.v1.OrderRefundStatus.ORDER_REFUND_STATUS_OPEN
Mapped array of: Summary totals of the refund.
CEL
refunds.map(x, x.summary)
Example
[
{
"refund_amount_cents": 15000,
"refund_tax_cents": 1350,
"refund_total_cents": 16350
}
]
Mapped array of: The date and time when the order refund was created.
CEL
refunds.map(x, x.created_at)
Example
[
"2024-03-20T14:00:00Z"
]
Mapped array of: The date and time when the order refund was last updated.
CEL
refunds.map(x, x.updated_at)
Example
[
"2024-03-20T14:30:00Z"
]
Mapped array of: When the refund was closed.
CEL
refunds.map(x, x.closed_at)
Example
[
"2024-03-20T14:30:00Z"
]
Mapped array of: The staff member who closed the refund.
CEL
refunds.map(x, x.closed_by)
Example
[
{
"email_address": "sarah.johnson@spa.com",
"first_name": "Sarah",
"id": "urn:blvd:Staff:staff123",
"last_name": "Johnson",
"phone_number": "+15551234567",
"role_name": "Massage Therapist"
}
]
The date and time when the order was closed.
CEL
closed_at
Example
"2024-03-15T12:00:00Z"
The staff member that closed the order.
CEL
closed_by
Example
{
"email_address": "sarah.johnson@spa.com",
"first_name": "Sarah",
"id": "urn:blvd:Staff:staff123",
"last_name": "Johnson",
"phone_number": "+15551234567",
"role_name": "Massage Therapist"
}
ID Unique identifier for the staff member.CEL
closed_by.id
Example
"urn:blvd:Staff:staff123"
PII First name of the staff member.CEL
closed_by.first_name
Example
"Sarah"
PII Last name of the staff member.CEL
closed_by.last_name
Example
"Johnson"
PII Email address of the staff member.CEL
closed_by.email_address
Example
"sarah.johnson@spa.com"
PII Mobile phone number of the staff member.CEL
closed_by.phone_number
Example
"+15551234567"
Name of the staff member’s role.
CEL
closed_by.role_name
Example
"Massage Therapist"
The date and time when the order was created.
CEL
created_at
Example
"2024-03-01T09:00:00Z"
The date and time when the order was last updated.
CEL
updated_at
Example
"2024-03-15T11:30:00Z"
