This order is already paid
order_already_paidHTTP 409Don't retry
What happened
A payment for this order_reference already succeeded. No new payment was created and nothing was sent to the customer.
What to do next
Fulfill the order once, from the paid payment in existing.
Can you retry?
Don't retry. Don't repeat this request. Fix what the response describes, or stop and report it. retry: never
Who acts
You: the software that sent the request. who_acts: caller
Don't
- Don't start another payment for the same order.
create_another_payment - Don't ask the customer to pay again.
ask_customer_to_pay_again
The existing object
This problem carries existing: a summary of the payment, payment link or refund that already holds this reference, with its type, id and current status, and for a payment its answer (paid, still confirming, or not paid). Continue with that object instead of starting another.
Example response
Sent as application/problem+json. The detail describes the particular request; keep request_id for support.
{
"type": "https://docs.perionpayments.com/problems/order-already-paid",
"title": "This order is already paid",
"status": 409,
"code": "order_already_paid",
"detail": "A payment for this order_reference already succeeded. No new payment was created and nothing was sent to the customer.",
"request_id": "req_8YkQ2rL0ZtW4",
"retryable": false,
"retry": "never",
"who_acts": "caller",
"next_step": "Fulfill the order once, from the paid payment in existing.",
"do_not": [
"create_another_payment",
"ask_customer_to_pay_again"
],
"existing": {
"object": "payment_intent",
"id": "pi_3Kx9TfQ2mVb7",
"status": "succeeded",
"amount": 1500,
"currency": "USD",
"merchant_reference": null,
"order_reference": "order-1042",
"payer_reference": "PER-K7QM-2TXA",
"answer": {
"paid": "yes",
"safe_to_fulfill": true,
"sentence": "Paid · confirmed by EcoCash at 18:02 CAT",
"do_not": [
"create_another_payment"
],
"check_again_after": null
},
"created_at": "2026-10-18T16:01:58Z"
}
}