| Successfully completed payment |
- Create a payment request.
- Open the payment request link on your device.
- Place a payment for the exact amount requested.
|
- The site gets a
payment_request callback.
- The callback status is
paid.
- The customer is redirected to
url_success.
- The customer receives an email about the successful payment.
|
| Overpayment |
- Create a payment request.
- Open the payment request link on your device.
- Place a payment for an amount larger than requested (add more than the minimum withdrawal amount plus the refund fee, or the extra amount can’t be refunded).
|
- The site gets a
payment_request callback.
- The callback status is
paid.
- The customer is redirected to
url_success.
- The customer receives an email with a link to an automatic partial refund.
|
| Underpayment |
- Create a payment request.
- Open the payment request link on your device.
- Place a payment for an amount less than requested (if you accept underpayments, less than your tolerance allows). To get a refund, pay more than the minimum withdrawal amount plus the refund fee.
- Wait until the payment request’s lifespan or rate lock ends, whichever comes first.
|
- When the payment request ends, the site gets a
payment_request callback.
- The callback status is
failed.
- The customer is redirected to
url_failed.
- The customer receives an email with a link to an automatic full refund.
|
| Accepted underpayment (if you accept underpayments) |
- Create a payment request.
- Open the payment request link on your device.
- Place a payment for an amount less than requested, but within your underpayment tolerance.
- Wait until the payment request’s lifespan or rate lock ends, whichever comes first.
|
- When the payment request ends, the site gets a
payment_request callback.
- The callback status is
paid, and its status_reason says the underpayment was accepted.
- The callback’s
currency_received is the amount actually received, converted to the payment request currency.
|
| Payment requests with a late payment |
- Create a payment request with a short lifespan (for example, 5 minutes).
- Open the payment request link on your device.
- Choose a payment currency and click Proceed to payment.
- Copy the address or scan the QR code with your device. Do not place the payment yet.
- Wait till the payment request expires.
- Place a payment for the requested amount.
|
- The site gets a
payment_request callback with the expired status when the payment request expires.
- After the late payment is confirmed, the site gets another
payment_request callback. Its status is still expired, and the transaction has late_payment set to true.
- The customer is redirected to
url_failed.
- The customer receives an email with a link to an automatic full refund.
|
| Payment request expired before the currency selection |
- Create a payment request with a short lifespan (for example, 5 minutes).
- Wait till the payment request expires.
|
- The site gets a
payment_request callback.
- The callback status is
expired.
- The customer is redirected to
url_failed.
- The customer does not receive any email.
|
| Payment request expired after the currency selection |
- Create a payment request with a short lifespan (for example, 5 minutes).
- Open the payment request link on your device.
- Choose a payment currency and click Proceed to payment. Do not place the payment.
- Wait till the payment request expires.
|
- The site gets a
payment_request callback.
- The callback status is
expired.
- The callback contains the information about the selected currency in the
currency_sent field.
- The customer is redirected to
url_failed.
- The customer does not receive any email.
|