본문으로 건너뛰기
페이싱크 개발자센터
Esc
↑↓이동↵열기⌘J미리보기
이 페이지에서

invoice.deleted

주문이 취소되면 보내는 v1 이벤트예요.

주문이 취소되면 보내요. v2에서는 주문을 지우지 않고 취소 상태로 바꾸는데, v1 웹훅은 이 취소를 예전 이름인 invoice.deleted로 보내요. v2 웹훅의 invoice.canceled와 같은 시점이에요.

이런 경우에 보내요.

결제 완료된 주문은 취소할 수 없으니 invoice.paid는 false예요.

페이로드

필드 타입 설명
type string "invoice.deleted"
invoice object 취소된 주문의 주문 객체예요.
{
  "type": "invoice.deleted",
  "invoice": {
    "id": "ivc_a1b2c3d4e5f6g7h8i9j0k1l2",
    "issuerId": "acc_x9y8z7w6v5u4t3s2r1q0p9o8",
    "bankAccountIds": [],
    "customer": {
      "name": "홍길동",
      "email": null,
      "phoneNumber": null
    },
    "cashReceipt": null,
    "amount": 50000,
    "paid": false,
    "metadata": { "orderId": "ORDER-2026-0001" },
    "issuedAt": "2026-04-28T03:14:15.000+00:00",
    "expiresAt": "2026-04-29T03:14:15.000+00:00",
    "deletedAt": null
  }
}

처리 예시

내 시스템의 주문도 취소 상태로 바꿔서 상태를 맞춰요.

if (event.type === "invoice.deleted") {
  const orderId = event.invoice.metadata?.orderId;
  if (orderId) {
    await db.orders.update(orderId, {
      status: "CANCELLED",
      cancelledAt: new Date(),
      cancelReason: "INVOICE_DELETED",
    });
  }
}

이 페이지가 도움이 되었나요?