Skip to main content
GET
/
payment-links
/
{payment_link_id}
C#
using Gr4vy;
using Gr4vy.Models.Components;

var sdk = new Gr4vySDK(
    id: "example",
    server: SDKConfig.Server.Sandbox,
    bearerAuthSource: Auth.WithToken(privateKey),
    merchantAccountId: "default"
);

var res = await sdk.PaymentLinks.GetAsync(paymentLinkId: "a1b2c3d4-5678-90ab-cdef-1234567890ab");

// handle response
package main

import(
"context"
"os"
gr4vygo "github.com/gr4vy/gr4vy-go"
"log"
)

func main() {
ctx := context.Background()

s := gr4vy.New(
gr4vy.WithID("example"),
gr4vy.WithServer(gr4vy.ServerSandbox),
gr4vy.WithSecuritySource(withToken),
gr4vy.WithMerchantAccountID("default"),
)

res, err := s.PaymentLinks.Get(ctx, "a1b2c3d4-5678-90ab-cdef-1234567890ab")
if err != nil {
log.Fatal(err)
}
if res != nil {
// handle response
}
}
package hello.world;

import com.gr4vy.sdk.Gr4vy;
import com.gr4vy.sdk.models.errors.*;
import com.gr4vy.sdk.models.operations.GetPaymentLinkResponse;
import java.lang.Exception;

public class Application {

public static void main(String[] args) throws Exception {

Gr4vy sdk = Gr4vy.builder()
.id("example")
.server(AvailableServers.SANDBOX)
.merchantAccountId("default")
.securitySource(new BearerSecuritySource.Builder(privateKey).build())
.build();

GetPaymentLinkResponse res = sdk.paymentLinks().get()
.paymentLinkId("a1b2c3d4-5678-90ab-cdef-1234567890ab")
.call();

if (res.paymentLink().isPresent()) {
System.out.println(res.paymentLink().get());
}
}
}
declare(strict_types=1);

require 'vendor/autoload.php';

use Gr4vy;

$sdk = Gr4vy\SDK::builder()
->setId('example')
->setServer('sandbox')
->setSecuritySource(Auth::withToken($privateKey))
->setMerchantAccountId('default')
->build();



$response = $sdk->paymentLinks->get(
paymentLinkId: 'a1b2c3d4-5678-90ab-cdef-1234567890ab'
);

if ($response->paymentLink !== null) {
// handle response
}
from gr4vy import Gr4vy
import os


with Gr4vy(
id="example",
server="sandbox",
merchant_account_id="default",
bearer_auth=auth.with_token(open("./private_key.pem").read())
) as g_client:

res = g_client.payment_links.get(payment_link_id="a1b2c3d4-5678-90ab-cdef-1234567890ab")

# Handle response
print(res)
import { Gr4vy, withToken } from "@gr4vy/sdk";
import fs from "fs";

const gr4vy = new Gr4vy({
id: "example",
server: "sandbox",
merchantAccountId: "default",
bearerAuth: withToken({
privateKey: fs.readFileSync("private_key.pem", "utf8"),
}),
});

async function run() {
const result = await gr4vy.paymentLinks.get("a1b2c3d4-5678-90ab-cdef-1234567890ab");

console.log(result);
}

run();
curl --request GET \
--url https://api.sandbox.{id}.gr4vy.app/payment-links/{payment_link_id} \
--header 'Authorization: Bearer <token>'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "url": "<string>",
  "amount": 49999999,
  "country": "<string>",
  "currency": "<string>",
  "cart_items": [
    {
      "amount": {
        "currency": "USD",
        "value": 500
      },
      "name": "Widget",
      "quantity": 2
    }
  ],
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z",
  "type": "payment-link",
  "expires_at": "2024-06-01T00:00:00.000Z",
  "external_identifier": "external-12345",
  "statement_descriptor": {
    "name": "ACME",
    "description": "ACME San Jose Electronics",
    "city": "San Jose",
    "country": "US",
    "phone_number": "+1234567890",
    "url": "www.example.com",
    "postal_code": "94560"
  },
  "locale": "en",
  "merchant_name": "ACME Inc.",
  "merchant_url": "https://merchant.example.com",
  "merchant_banner_url": "https://merchant.example.com/banner.png",
  "merchant_color": "#FF5733",
  "merchant_message": "Thank you for your purchase!",
  "merchant_terms_and_conditions_url": "https://merchant.example.com/terms",
  "merchant_favicon_url": "https://merchant.example.com/favicon.ico",
  "return_url": "https://merchant.example.com/return",
  "metadata": {
    "order_id": "ORD-12345"
  },
  "buyer": {
    "type": "buyer",
    "id": "fe26475d-ec3e-4884-9553-f7356683f7f9",
    "display_name": "John Doe",
    "external_identifier": "buyer-12345",
    "billing_details": {
      "first_name": "John",
      "last_name": "Doe",
      "email_address": "john@example.com",
      "phone_number": "+1234567890",
      "address": {
        "city": "San Jose",
        "country": "US",
        "postal_code": "94560",
        "state": "California",
        "state_code": "US-CA",
        "house_number_or_name": "10",
        "line1": "Stafford Appartments",
        "line2": "29th Street",
        "organization": "Gr4vy"
      },
      "tax_id": {
        "value": "<string>"
      }
    },
    "account_number": "<string>"
  },
  "shipping_details": {
    "first_name": "John",
    "last_name": "Doe",
    "email_address": "john@example.com",
    "phone_number": "+1234567890",
    "address": {
      "city": "San Jose",
      "country": "US",
      "postal_code": "94560",
      "state": "California",
      "state_code": "US-CA",
      "house_number_or_name": "10",
      "line1": "Stafford Appartments",
      "line2": "29th Street",
      "organization": "Gr4vy"
    },
    "id": "bf8c36ad-02d9-4904-b0f9-a230b149e341",
    "buyer_id": "fe26475d-ec3e-4884-9553-f7356683f7f9",
    "type": "shipping-details"
  },
  "connection_options": {},
  "store": false,
  "buyer_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
  "installment_count": 50
}
{
"type": "error",
"code": "bad_request",
"status": 400,
"message": "Generic error",
"details": []
}
{
"type": "error",
"code": "unauthorized",
"status": 401,
"message": "No valid API authentication found",
"details": []
}
{
"type": "error",
"code": "forbidden",
"status": 403,
"message": "Generic error",
"details": []
}
{
"type": "error",
"code": "not_found",
"status": 404,
"message": "The resource could not be found",
"details": []
}
{
"type": "error",
"code": "method_not_allowed",
"status": 405,
"message": "Method Not Allowed",
"details": []
}
{
"type": "error",
"code": "duplicate_record",
"status": 409,
"message": "Generic error",
"details": [],
"resource_id": "cdc70639-cb9c-4222-a73f-b8ce39f7821b"
}
{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}
{
"type": "error",
"code": "too_early",
"status": 425,
"message": "Generic error",
"details": []
}
{
"type": "error",
"code": "too_many_requests",
"status": 429,
"message": "Generic error",
"details": []
}
{
"type": "error",
"code": "server_error",
"status": 500,
"message": "Request could not be processed",
"details": []
}
{
"type": "error",
"code": "bad_gateway",
"status": 502,
"message": "Request could not be processed",
"details": []
}
{
"type": "error",
"code": "gateway_timeout",
"status": 504,
"message": "Request could not be processed",
"details": []
}
This endpoint requires the payment-links.read scope.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

x-gr4vy-merchant-account-id
string | null

The ID of the merchant account to use for this request.

Example:

"default"

Path Parameters

The unique identifier for the payment link.

Example:

"a1b2c3d4-5678-90ab-cdef-1234567890ab"

Response

Successful Response

id
string<uuid>
required

The unique identifier for the payment link.

Example:

"a1b2c3d4-5678-90ab-cdef-1234567890ab"

url
string
required

The URL for the payment link.

Example:

"https://example.com/link/a1b2c3d4-5678-90ab-cdef-1234567890ab"

amount
integer
required

The amount for the payment link.

Required range: 0 <= x <= 99999999
Example:

1299

country
string
required

The country code for the payment link.

Pattern: ^[A-Z]{2}$
Examples:

"DE"

"GB"

"US"

currency
string
required

The currency code for the payment link.

Pattern: ^[A-Z]{3}$
Examples:

"EUR"

"GBP"

"USD"

intent
enum<string>
required

The transaction intent for the payment link.

Available options:
authorize,
capture
Examples:

"authorize"

"capture"

cart_items
CartItem · object[] | null
required

The cart items for the payment link.

Example:
[
{
"amount": { "currency": "USD", "value": 500 },
"name": "Widget",
"quantity": 2
}
]
payment_source
enum<string>
required

The way payment method information made it to this transaction.

Available options:
ecommerce,
moto,
recurring,
installment,
card_on_file
Example:

"ecommerce"

created_at
string<date-time>
required

The date and time the payment link was created.

Example:

"2024-05-30T12:34:56.000Z"

updated_at
string<date-time>
required

The date and time the payment link was last updated.

Example:

"2024-05-30T13:00:00.000Z"

status
enum<string>
required

The status of the payment link.

Available options:
active,
completed,
expired,
processing
Examples:

"active"

"expired"

"completed"

type
string
default:payment-link

Always payment-link.

Allowed value: "payment-link"
Example:

"payment-link"

expires_at
string<date-time> | null

The expiration date and time for the payment link.

Example:

"2024-06-01T00:00:00.000Z"

external_identifier
string | null

The merchant reference for the payment link.

Required string length: 1 - 200
Example:

"external-12345"

statement_descriptor
StatementDescriptor · object | null

The statement descriptor for the payment link.

locale
string | null

The locale for the payment link.

Example:

"en"

merchant_name
string | null

The merchant's display name.

Required string length: 1 - 100
Example:

"ACME Inc."

merchant_url
string | null

The merchant's website URL.

Example:

"https://merchant.example.com"

merchant_banner_url
string | null

The merchant's banner image URL.

Example:

"https://merchant.example.com/banner.png"

merchant_color
string | null

The merchant's brand color.

Required string length: 1 - 100
Example:

"#FF5733"

merchant_message
string | null

A message from the merchant.

Required string length: 1 - 255
Example:

"Thank you for your purchase!"

merchant_terms_and_conditions_url
string | null

URL to the merchant's terms and conditions.

Example:

"https://merchant.example.com/terms"

merchant_favicon_url
string | null

URL to the merchant's favicon.

Example:

"https://merchant.example.com/favicon.ico"

return_url
string | null

The return URL after payment completion.

Example:

"https://merchant.example.com/return"

metadata
Metadata · object | null

Arbitrary metadata for the payment link.

Example:
{ "order_id": "ORD-12345" }
buyer
TransactionBuyer · object | null

The buyer associated with the payment link.

shipping_details
ShippingDetails · object | null

The shipping details for the payment link.

connection_options
Connection Options · object | null

The connection options for the payment link.

store
boolean
default:false

Whether the payment method was stored.

buyer_id
string<uuid> | null

The ID of the buyer to associate with the stored payment method.

Example:

"a1b2c3d4-5678-90ab-cdef-1234567890ab"

installment_count
integer | null

The number of installments a buyer is required to make.

Required range: 1 <= x <= 100