Skip to main content
GET
/
buyers
/
payment-methods
C#
using Gr4vy;
using Gr4vy.Models.Components;
using Gr4vy.Models.Requests;

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

ListBuyerPaymentMethodsRequest req = new ListBuyerPaymentMethodsRequest() {
    BuyerId = "fe26475d-ec3e-4884-9553-f7356683f7f9",
    BuyerExternalIdentifier = "buyer-12345",
    SortBy = ListBuyerPaymentMethodsSortBy.LastUsedAt,
    Country = "US",
    Currency = "USD",
};

var res = await sdk.Buyers.PaymentMethods.ListAsync(req);

// handle response
package main

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

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

s := gr4vygo.New(
gr4vygo.WithMerchantAccountID("default"),
gr4vygo.WithSecurity(os.Getenv("GR4VY_BEARER_AUTH")),
)

res, err := s.Buyers.PaymentMethods.List(ctx, operations.ListBuyerPaymentMethodsRequest{
BuyerID: gr4vygo.Pointer("fe26475d-ec3e-4884-9553-f7356683f7f9"),
BuyerExternalIdentifier: gr4vygo.Pointer("buyer-12345"),
SortBy: operations.ListBuyerPaymentMethodsSortByLastUsedAt.ToPointer(),
Country: gr4vygo.Pointer("US"),
Currency: gr4vygo.Pointer("USD"),
})
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.*;
import java.lang.Exception;

public class Application {

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

Gr4vy sdk = Gr4vy.builder()
.merchantAccountId("default")
.bearerAuth(System.getenv().getOrDefault("BEARER_AUTH", ""))
.build();

ListBuyerPaymentMethodsRequest req = ListBuyerPaymentMethodsRequest.builder()
.buyerId("fe26475d-ec3e-4884-9553-f7356683f7f9")
.buyerExternalIdentifier("buyer-12345")
.sortBy(ListBuyerPaymentMethodsSortBy.LAST_USED_AT)
.country("US")
.currency("USD")
.build();

ListBuyerPaymentMethodsResponse res = sdk.buyers().paymentMethods().list()
.request(req)
.call();

if (res.paymentMethodSummaries().isPresent()) {
System.out.println(res.paymentMethodSummaries().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();

$request = new Gr4vy\ListBuyerPaymentMethodsRequest(
buyerId: 'fe26475d-ec3e-4884-9553-f7356683f7f9',
buyerExternalIdentifier: 'buyer-12345',
sortBy: Gr4vy\ListBuyerPaymentMethodsSortBy::LastUsedAt,
country: 'US',
currency: 'USD',
);

$response = $sdk->buyers->paymentMethods->list(
request: $request
);

if ($response->paymentMethodSummaries !== 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.buyers.payment_methods.list(buyer_id="fe26475d-ec3e-4884-9553-f7356683f7f9", buyer_external_identifier="buyer-12345", sort_by="last_used_at", order_by="desc", country="US", currency="USD")

# 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.buyers.paymentMethods.list();

console.log(result);
}

run();
curl --request GET \
--url https://api.sandbox.{id}.gr4vy.app/buyers/payment-methods \
--header 'Authorization: Bearer <token>'
{
  "items": [
    {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "merchant_account_id": "<string>",
      "cit_usage_count": 123,
      "has_replacement": true,
      "usage_count": 123,
      "scheme_transaction_id": "123456789012345",
      "scheme_transaction_id_scheme": "visa",
      "type": "payment-method",
      "approval_url": "https://gr4vy.app/redirect/12345",
      "country": "US",
      "currency": "USD",
      "details": {
        "bin": "<string>",
        "card_issuer_name": "<string>"
      },
      "expiration_date": "12/30",
      "fingerprint": "a50b85c200ee0795d6fd33a5c66f37a4564f554355c5b46a756aac485dd168a4",
      "label": "1234",
      "last_replaced_at": "2013-07-16T19:23:00.000+00:00",
      "mode": "card",
      "scheme": "visa",
      "additional_schemes": [
        "eftpos-australia"
      ],
      "cit_last_used_at": "2013-07-16T19:23:00.000+00:00",
      "last_used_at": "2013-07-16T19:23:00.000+00:00",
      "transaction_link_id": "123456789012345"
    }
  ]
}
{
"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-methods.read or embed 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"

Query Parameters

buyer_id
string<uuid> | null

The ID of the buyer to query payment methods for.

Example:

"fe26475d-ec3e-4884-9553-f7356683f7f9"

buyer_external_identifier
string | null

The external identifier of the buyer to query payment methods for.

Example:

"buyer-12345"

sort_by

The field to sort the payment methods by.

Allowed value: "last_used_at"
Example:

"last_used_at"

order_by
enum<string>
default:desc

The direction to sort the payment methods in.

Available options:
asc,
desc
Example:

"desc"

country
string | null

The country code to filter payment methods by. This only applies to payment methods with a country value.

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

"US"

currency
string | null

The currency code to filter payment methods by. This only applies to payment methods with a currency value.

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

"USD"

Response

Successful Response

items
PaymentMethodSummary · object[]
required

A list of items returned for this request.