> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gr4vy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Payment link expiration and statuses

Your customer uses the payment link to create the payment. Once the transaction is created, the customer
is redirected to the `return_url` you specified, or shown the page's own confirmation screen if you didn't set one.

Gr4vy appends `gr4vy_transaction_id` and `gr4vy_transaction_status` to the `return_url`. The redirect happens
for every transaction outcome, including declines, so check the status before you treat the order as paid.
To confirm the result, [get the transaction](/reference/transactions/get-transaction) or listen for
[transaction webhooks](/guides/features/webhooks/overview).

## Statuses

The page displays different content based on the status of the payment link.

### Generic error

Either the payment link id provided is invalid or some other error occurred when loading the page (for example network error).

<Frame>
  <img src="https://mintcdn.com/gr4vy/jCFeFdffXM43huI0/assets/images/payment-links/generic-error.png?fit=max&auto=format&n=jCFeFdffXM43huI0&q=85&s=46d99da4faf5b10932c147408a87a58c" alt="Generic Error" width="2560" height="1618" data-path="assets/images/payment-links/generic-error.png" />
</Frame>

### Payment link not found

The payment link id provided is valid but the resource associated with it could not be found.

<Frame>
  <img src="https://mintcdn.com/gr4vy/81rUFzs1xxqEKdRI/assets/images/payment-links/not-found.png?fit=max&auto=format&n=81rUFzs1xxqEKdRI&q=85&s=c2fc6a023f5e915f28a580e6ab5c691a" alt="Not Found" width="2560" height="1618" data-path="assets/images/payment-links/not-found.png" />
</Frame>

### Redirecting

Embed has created the transaction and the page is redirecting the customer to the `return_url` or the internal confirmation screen.

<Frame>
  <img src="https://mintcdn.com/gr4vy/81rUFzs1xxqEKdRI/assets/images/payment-links/redirecting.png?fit=max&auto=format&n=81rUFzs1xxqEKdRI&q=85&s=4e98d39c6389bda6cf6934c186edaa7c" alt="Redirecting" width="2560" height="1618" data-path="assets/images/payment-links/redirecting.png" />
</Frame>

### Payment successful (internal)

The payment was successful and a `return_url` was not specified. Also displays if the payment link has already been used.

<Frame>
  <img src="https://mintcdn.com/gr4vy/81rUFzs1xxqEKdRI/assets/images/payment-links/payment-successful.png?fit=max&auto=format&n=81rUFzs1xxqEKdRI&q=85&s=4b1d968c21578e1db1f9a23dc70b52e9" alt="Payment Successful" width="2560" height="1618" data-path="assets/images/payment-links/payment-successful.png" />
</Frame>

## Expiration

By default, payment link expires in 24 hours. This can be configured separately by setting the `expires_at` field in the API.

Once expired, a payment link no longer loads and instead shows the following screen.

<Frame>
  <img src="https://mintcdn.com/gr4vy/jCFeFdffXM43huI0/assets/images/payment-links/expired.png?fit=max&auto=format&n=jCFeFdffXM43huI0&q=85&s=fddeeec394063787b458249f4cd2ba1e" alt="Expired" width="2560" height="1618" data-path="assets/images/payment-links/expired.png" />
</Frame>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.