中文文档

Lemon Squeezy Adapter

Lemon Squeezy-compatible webhook payloads for Yolfi events

Overview

The Lemon Squeezy adapter sends a JSON:API-style body with meta.event_name, meta.custom_data, data.type, data.id, and data.attributes.

Yolfi webhooks are still authenticated with X-Yolfi-Signature. The adapter does not emulate Lemon Squeezy signatures.

Event Mapping

Yolfi eventLemon Squeezy-compatible events
invoice.createdorder_created with pending status
payment.confirmed one-timeorder_created with paid status
payment.confirmed recurringsubscription_payment_success
invoice.overdueorder_created with expired status
subscription.overduesubscription_payment_failed, subscription_expired
subscription.cancelledsubscription_cancelled

Field Mapping

Yolfi fieldLemon Squeezy field
amountUsdsubtotal, total, subtotal_usd, total_usd in cents
symbolcurrency; stablecoins map to USD
customer.emailuser_email
customer.nameuser_name
invoiceIddata.id, identifier, order_number, or subscription invoice ID
subscriptionIdsubscription_id or subscription data.id
customer.clientReferenceIdmeta.custom_data.client_reference_id
metadatameta.custom_data

Yolfi-specific blockchain fields are stored in meta.custom_data: chain_id, network, token, and symbol.

Example: order_created

{
  "meta": {
    "event_name": "order_created",
    "custom_data": {
      "yolfi_invoice_id": "invoice-001",
      "yolfi_paylink_id": "paylink-001",
      "yolfi_org_id": "org-001",
      "client_reference_id": "merchant-customer-001",
      "chain_id": 42161,
      "network": "ARB",
      "token": "0xaf88",
      "symbol": "USDC"
    }
  },
  "data": {
    "id": "invoice-001",
    "type": "orders",
    "attributes": {
      "identifier": "invoice-001",
      "order_number": "invoice-001",
      "user_name": "Customer One",
      "user_email": "customer@example.com",
      "currency": "USD",
      "subtotal": 1234,
      "tax": 0,
      "total": 1234,
      "status": "paid",
      "status_formatted": "Paid"
    }
  }
}

Example: subscription_payment_success

{
  "meta": {
    "event_name": "subscription_payment_success",
    "custom_data": {
      "yolfi_subscription_id": "subscription-001",
      "yolfi_invoice_id": "invoice-001"
    }
  },
  "data": {
    "id": "invoice-001",
    "type": "subscription-invoices",
    "attributes": {
      "subscription_id": "subscription-001",
      "billing_reason": "renewal",
      "currency": "USD",
      "status": "paid",
      "subtotal": 1234,
      "tax": 0,
      "total": 1234
    }
  }
}

目錄