Pay a payment challenge
Changed onSettle a challenge addressed to your org as payer. The request body carries a signed x402 PaymentPayload: an EIP-3009 transferWithAuthorization signed locally with your own key, whose nonce is bound to the challenge via the SDK's deriveEip3009Nonce. The platform verifies every signed field against its own record of the challenge, applies your spend policy, and settles on-chain through a facilitator. Settlement is non-custodial; Primitive never holds funds. Idempotent: paying an already-settled challenge returns the original receipt. Most callers use the SDK pay() helper rather than building the payload by hand.
Request
- Base URL: https://api.primitive.dev/v1
- URL: https://api.primitive.dev/v1/x402/challenges/{id}/pay
- Auth: HTTP bearer
Path parameters
Resource UUID
Request body
Response
Challenge settled (or already settled)
Changes
- info
removed the
invalid_signup_codeenum value from the/response property for the response status - info
removed the
invalid_signup_codeenum value from the/response property for the response status - info
removed the
invalid_signup_codeenum value from the/response property for the response status - info
removed the
invalid_signup_codeenum value from the/response property for the response status - info
removed the
invalid_signup_codeenum value from the/response property for the response status - info
removed the
invalid_signup_codeenum value from the/response property for the response status - info
removed the
invalid_signup_codeenum value from the/response property for the response status - info
removed the
invalid_signup_codeenum value from the/response property for the response status
- info
- warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
not_a_repeating_sendenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_idle_requires_internal_recipientenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_recipient_externalenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_stop_not_allowedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status - warning
added the new
repeat_unsupportedenum value to the/response property for the response status
- warning