Ir al contenido
GitHub

Payment pointers y wallet addresses

Un Payment pointer es un identificador estandarizado para una cuenta de pago que admite pagos mediante Interledger. Cada Payment pointer debe resolverse en una URL HTTPS que funcione como un punto final SPSP para facilitar el envío y la recepción de paquetes ILP.

Puede determinar si una URL es un Payment pointer enviando una solicitud GET a la URL con un encabezado accept: application/spsp4+json.

Ejemplo de solicitud
curl --request GET \
--url https://wallet.example.com/alice/ \
--header 'accept: application/spsp4+json'

Si un servidor SPSP devuelve una respuesta, significa que la URL es un Payment pointer.

Ejemplo de respuesta
{
"destination_account":"example.0.cloudnine.ind.alice.cdfa5e16-e759",
"shared_secret":"7h0s7EpQDqcgzqmX-mwrNHFHinPvJq8Jw",
}

Los Payment pointers suelen representarse mediante la notación abreviada $. Por ejemplo, $wallet.example.com/alice, que se resuelve en https://wallet.example.com/alice/.

Rafiki asigna un Payment pointer a cada una de las cuentas de sus clientes. Este Payment pointer también es un wallet address, ya que Rafiki es compatible tanto con Interledger como con Open Payments.

Un wallet address es una URL segura y única de una cuenta de pago compatible con Open Payments. Funciona como un punto de entrada a las API de Open Payments, y facilita interacciones como el envío y la recepción de pagos.

Puede determinar si una URL es un wallet address enviando una solicitud GET a la URL con un encabezado accept: application/json.

Ejemplo de solicitud
curl --request GET \
--url https://wallet.example.com/alice \
--header 'accept: application/json'

Una respuesta válida significa que la URL es un wallet address.

Ejemplo de respuesta
{
"id": "https://wallet.example.com/alice",
"publicName": "Alice",
"assetCode": "USD",
"assetScale": 2,
"authServer": "https://auth.wallet.example.com/123e4567-e89b-12d3-a456-426614174000",
"resourceServer": "https://wallet.example.com/123e4567-e89b-12d3-a456-426614174000",
}

Las URL authServer y resourceServer incluyen el identificador del tenant (UUID v4) como un segmento de ruta para garantizar que las solicitudes de Open Payments se dirijan al tenant correcto.

Rafiki asigna un wallet address a cada una de las cuentas de sus clientes. Este wallet address también es un Payment pointer porque Rafiki es compatible con Open Payments e Interledger. Consulte los requisitos de integración para wallet addresses para obtener más información.