UNPKG

@depay/verify-payment

Version:

A light JavaScript/TypeScript package to decode payment instructions for the DePay payment protocol.

72 lines (44 loc) 3.27 kB
## Installation ``` yarn add @depay/verify-payment ``` or ``` npm install --save @depay/verify-payment ``` ## Functionality ### Decode payment ```javascript import { decodePayment } from '@depay/verify-payment' const payment = decodePayment({ blockchain: 'ethereum', address: '0xF491525C7655f362716335D526E57b387799d058', transaction: '0x422feecb000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000243cd890b58000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000001c232f01118cb8b424793ae03f870aa7d0ac7f770000000000000000000000004ecaba5870353805a9f068101a40e0f32ed605c600000000000000000000000008b277154218ccf3380cae48d630da13462e395000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002e00000000000000000000000000000000000000000000000000000000064f2fb0400000000000000000000000000000000000000000000000000000000000000e47ff36ab5000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000000000800000000000000000000000005ec3153bacebb5e49136cf2d457f26f5df1b67800000000000000000000000000000000000000000000000000000000064f2fb030000000000000000000000000000000000000000000000000000000000000002000000000000000000000000e91d153e0b41518a2ce8dd3d7944fa863463a97d0000000000000000000000004ecaba5870353805a9f068101a40e0f32ed605c60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000' }); // payment = { // amount: BigInt('10200000000000000'), // token: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee', // receiver: '0x08b277154218ccf3380cae48d630da13462e3950' // } ``` The `decodePayment` function will return a payment with the following attributes: `amount`: Amount paid as BigInt `token`: Address of the token used to perform the payment `receiver`: Address of the payment receiver #### Blockchain You can pass blockchains in 3 different formats: `names`: e.g. `ethereum`, `bsc`, `polygon` etc. check [web3-blockchains](https://github.com/DePayFi/web3-blockchains/tree/master/src/blockchains) for a list of names. `id`: e.g. `1` (ethereum), `137` (polygon), `10` (optimism) etc. `hexId` (lowercase): e.g. `0x1` (ethereum), `0x89` (polygon), `0xa` (optimism) etc. #### Address Please make sure you pass addresses correctly [checksum-formatted](https://docs.alchemy.com/docs/how-to-handle-checksum-addresses) as it will be verified case-sensitive. If the given address does not match the given blockchain, `undefined` is returned. #### Transaction The transaction needs If the given transaction can't be decoded, `undefined` is returned. ## Development ### Get started ``` yarn install yarn test ```