Prove that Square captured the card payment and the money moved. An approved payment is an authorisation hold, not a captured payment. This level reads the payment status and the card timeline together.

Contract identity.
FactValue
Contract idsquare.payment.completed
Version1.0.0
Hash8614830aaeb73986
Completion levelcompleted
PublisherBuilt and signed by Provely.
CertificationProvisional
SkillSquare 0.1.0
Valid for provider API versions2026-08-19

What is the intent?

Charge the card for the amount.

What is the subject and the action?

MemberValue
Subject typesquare.payment
Canonical effectpayments.card_charge
Provider operationPOST /v2/payments
Idempotencyidempotency_key, retry is safe

Which false successes give CONTRADICTED?

  • duplicate side effect
  • pre existing state
  • wrong amount
  • wrong subject

The signed contract states the exact conditions, the evidence and the timing. The runtime reads them. The page states the promise.

Where do these rules come from?

  • square.openapi#/components/schemas/Payment/properties/status: square.openapi, retrieved 2026-09-08
  • square.openapi#/components/schemas/CardPaymentDetails/properties/status: square.openapi, retrieved 2026-09-08
  • square.docs.payments#payments/complete-a-payment/p1: square.docs.payments, retrieved 2026-09-08
  • square.docs.payments#payments/autocomplete-and-the-approved-state/p4: square.docs.payments, retrieved 2026-09-08
  • square.openapi#/components/schemas/Payment/properties/amount_money: square.openapi, retrieved 2026-09-08
  • square.openapi#/components/schemas/Money/properties/amount: square.openapi, retrieved 2026-09-08
  • square.docs.payments#payments/amounts/p1: square.docs.payments, retrieved 2026-09-08
  • square.openapi#/components/schemas/Money/properties/currency: square.openapi, retrieved 2026-09-08
  • square.docs.payments#payments/amounts/p2: square.docs.payments, retrieved 2026-09-08
  • square.openapi#/components/schemas/Payment/properties/created_at: square.openapi, retrieved 2026-09-08
  • square.docs.payments#payments/identifiers/p2: square.docs.payments, retrieved 2026-09-08
  • square.events#/events/payment.updated: square.events, retrieved 2026-09-08
  • square.docs.webhooks#webhooks/the-event-types/p3: square.docs.webhooks, retrieved 2026-09-08
  • square.docs.webhooks#webhooks/the-event-types/p6: square.docs.webhooks, retrieved 2026-09-08

Can square.payment.completed return VERIFIED from the action response alone?

No. The action response is E1, and an acknowledgement is never terminal success. The contract needs evidence of level E2 or higher from Square.

What happens after the timeout?

The verdict is UNVERIFIABLE. The operation goes to a person for review.