Get an incoming payment
An authorized client can look up the state of an incoming payment on a wallet address. This is useful when a client must determine if an incoming payment is still active and pending payment.
These code snippets return the state and details of a specific incoming payment, if found.
Before you begin
We recommend creating a wallet account on the test wallet. Creating an account allows you to test your client against the Open Payments APIs by using an ILP-enabled wallet funded with play money.
Get the state of an incoming payment
Initial configuration
If you’re using JavaScript, only do the first step.
- Add
"type": "module"
topackage.json
. - Add the following to
tsconfig.json
{"compilerOptions": {"target": "ES2022","module": "ES2022"}}
Import dependencies
import { createAuthenticatedClient } from "@interledger/open-payments";
Copied! Initialize Open Payments client
const client = await createAuthenticatedClient({
walletAddressUrl: WALLET_ADDRESS,
privateKey: PRIVATE_KEY_PATH,
keyId: KEY_ID,
});
Copied! Get incoming payment
const incomingPayment = await client.incomingPayment.get({
url: INCOMING_PAYMENT_URL,
accessToken: INCOMING_PAYMENT_ACCESS_TOKEN,
});
Copied! Output
console.log("INCOMING PAYMENT:", incomingPayment);
Copied! For TypeScript, run tsx path/to/directory/index.ts
. View full TS source
For JavaScript, run node path/to/directory/index.js
. View full JS source
Import dependencies
use OpenPayments\AuthClient;
use OpenPayments\Config\Config;
Copied! Initialize Open Payments client
$config = new Config($WALLET_ADDRESS, $PRIVATE_KEY, $KEY_ID);
$opClient = new AuthClient($config);
Copied! Get with authentication
Get incoming payment
$incomingPayment = $opClient->incomingPayment()->get([
"access_token" => $INCOMING_PAYMENT_GRANT_ACCESS_TOKEN,
"url" => $INCOMING_PAYMENT_URL,
]);
Copied! Get without authentication
Get incoming payment
$incomingPayment = $opClient->incomingPayment()->get([
"url" => $INCOMING_PAYMENT_URL,
]);
Copied! Output
$output->writeln("INCOMING PAYMENT: " . print_r($incomingPayment, true));
Copied!