Breakdown (with Surcharge)

Enhanced payment amount breakdown with surcharge support. Rates can be sent as integers (old SDK format, e.g., 875 = 8.75%) or floats (new SDK format, e.g., 8.75). Values >= 100 are auto-converted from basis points.

  • subtotal
    Type: integer · Subtotal
    required

    Subtotal amount in cents before tax, tip, and surcharge.

  • surcharge
    Type: object · Surcharge nullable

    Surcharge configuration for a transaction. Only one of amount or percentage may be set. When bypass is true, neither amount nor percentage should be provided.

    • amount
      Type: integer | null · Amount

      Fixed surcharge amount in cents. Mutually exclusive with percentage.

    • bypass
      Type: boolean · Bypass

      When true, surcharge calculation is skipped entirely for this transaction. Must be false when amount or percentage is provided.

    • percentage
      Type: number | null · Percentage

      Surcharge rate as a decimal (e.g., 3.5 for 3.5%). Mutually exclusive with amount.

  • taxAmount
    Type: integer | null · Taxamount

    Tax amount in cents.

  • taxRate
    Type: number | null · Taxrate

    Tax rate as a float (e.g., 8.75 for 8.75%). Integer values >= 100 are auto-divided by 100 for backward compatibility.

  • tipAmount
    Type: integer | null · Tipamount

    Tip amount in cents.

  • tipRate
    Type: number | null · Tiprate

    Tip rate as a float (e.g., 15.0 for 15%). Integer values >= 100 are auto-divided by 100 for backward compatibility.

  • tipType
    Type: string | null · Tiptype

    Tip calculation method. One of: fixed, percentage.