v1

latestOpenAPI 3.0.12026-07-242871595.3 MB
PAYMENTS

Send a payment request to a Clover device

Starts the payment flow for the transaction type specified in the request. Once the customer finishes their payment, a payment response is returned, and the device returns to the idle state.

post/v1/payments

Headers

User-Agentstring required

Identifies the application, operating system, vendor, and/or version of the requesting user agent. Format: <AppName>/<Version> <Comment>

X-Clover-Device-Idstring required

The Clover device to route the request to.

X-POS-Idstring required

An identifier for the POS making the request.

X-Clover-Timeoutinteger

The amount of time, in seconds, that this operation will process before timing out. A value of 0 indicates no timeout will be enforced by Remote Pay, although protocol specified timeouts may still apply.

Idempotency-Keystring required

The idempotency key transmitted during the request, if any.

Request body

amountinteger

The amount of the payment, in cents.

captureboolean

If set to true (auth), the payment is automatically and immediately captured, but it may be adjustable until closeout runs at which time it will be settled/closed. If set to false (pre-auth), the payment will not be automatically captured, and a subsequent call to capture is required. Once captured, the payment will be settled/closed the next time closeout runs. NOTE: This value is ignored if the final field is set to true.

externalPaymentIdstring

A unique id assigned by the POS to identify this transaction. Critical for reconciliation and recovery.

externalReferenceIdstring

An ID that can be passed to the merchant's gateway and ultimately appears in settlement records.

finalboolean

If set to true, the payment will run as a closed, non-adjustable transaction (sale), the capture field will be ignored, and the tip will be set to the amount in the tipAmount field, or 0 if the tipAmount is not specified. If set to false then the capture flag is evaluated to determine if the payment will be automatically captured or if a subsequent call to capture is required. In addition, if set to false setting the tipAmount field will result in a validation error.

taxAmountinteger

The tax amount, in cents.

tipAmountinteger

The tip amount, in cents. NOTE: If the final field is set to false, setting this field will result in a validation error.

Example request

{
  "vaultedCard": {
    "last4": "1234"
  }
}

Response

A valid PayResponse

Example response

{
  "payment": {
    "cardTransaction": {
      "last4": "1234"
    },
    "refunds": [
      {
        "cardTransaction": {
          "last4": "1234"
        }
      }
    ]
  }
}