Skip to main content

Payment Object

Overview

The payment object represents a single payment method used in a transaction. An order can have multiple payment objects when the customer uses split payments (e.g. gift card + credit card).

Each payment captures the method name, amount paid, and payment classification. The sum of all payment values should match the order total.

Complete Reference

payments[0] object

name string required

info

Payment method name.

name: "Credit Card - Visa"

value number required

info

Amount paid with this payment method

value: 12.99

id string

info

Payment method internal identifier

id: "PAYMENT_INTERNAL_ID"

type string

info

Payment type. Free-form string, use consistent naming (e.g. "card", "paypal", "bank_transfer", "gift_card", "cash_on_delivery").

type: "card"

Examples

{
"name": "Credit Card - Visa",
"value": 299.99,
"id": "CC_VISA_4532",
"type": "card"
}

Best Practices

  • Accurate amounts — ensure payment values reflect actual transaction amounts; the sum of all payments should equal the order total
  • Consistent naming — use standardized payment method names across events
  • Type classification — use consistent type values for reporting (e.g. "card", "paypal", "bank_transfer", "gift_card", "cash_on_delivery", "buy_now_pay_later")
  • No sensitive data — never include full card numbers, CVV, or other sensitive payment details; use last four digits or tokenized IDs only
  • Split payments — when a customer pays with multiple methods, include each as a separate object in the payments array