payitgo 0.7.1
payitgo: ^0.7.1 copied to clipboard
Dart client for the payitgo crypto payment gateway (payments and mass payouts), for Dart servers, with a key-less checkout client for Flutter apps.
Changelog #
0.7.1 #
- npm SDKs publish from their own repositories (trusted publishing)
0.7.0 #
- Fees are one sum per transaction: merchants see only the total
0.6.2 #
- Docs checked against the code; SDK examples and errors use payitgo's API
0.6.1 #
- Docs show payitgo's real addresses; merchants' are yourdomain.com
0.6.0 #
- Mass payouts: pay your own clients from your payout wallet.
payitgo.payouts: payout requests sent one by one as your clients ask (request, safe to retry on itsreference), your open list with what sending it needs of the wallet (inbox),send(all valid requests, or someids),retrieve,retrieveByReference,cancel, andquote(prices up to 100 payments, nothing kept).payitgo.payoutBatches:create,list,retrieve,items,addItems,quote,submitandcancel.payitgo.payoutWallets:list, andsimulateTopUpfor test keys.- Typed models:
PayoutItemInput,PayoutItem,PayoutBatch,PayoutInbox,PayoutQuoteResult,PayoutWallet,PayoutWithdrawaland their parts; amounts are decimal strings, as everywhere. - Claim links: with
claim: trueorclaimAssets(other coins to offer) and no address, the recipient chooses the coin and the address; anemailgets the link. Payments carryclaim(PayoutClaim:url,expiresAt,claimedAt, …), statusesclaimableandexpired, and batch counts of both. - Converted payments:
convertandconvertFromonpayoutBatches.createandpayouts.quotepay every payment in another coin from the wallet's coin, converted on its way. Payments carryconvert(PayoutConversion:to,toAmount,estimate,amountOut) andconversionFee; batchesconvertandconvertFrom. - Schedules (set up in the dashboard):
PayoutScheduleandPayoutScheduleFundingfor their webhooks; batchsourceschedule. payouts.remove(ids)takes up to 1000 payout requests out of the list at once: aPayoutRemoveResultper id, itsitemor itserror(aPayitgoException). An emptyidsthrows anArgumentError.payouts.list(status:, updatedSince:, cursor:, limit:)lists every payment of the mode by last change, oldest first, to resync: aPayoutPage(items,hasMore,nextCursor).payouts.cancelis safe to retry: a payment canceled already comes back as it is. A removed request keeps its record, without a batch.payouts.retrieveByReferencefalls back to the latest payment that gave the reference back; an empty reference throws anArgumentError.- Payments carry
cancelReason(removed,canceled,batch_canceled,rejected,invalid),cancelNote,canceledBy,canceledAt,membersandwebhookUrl;batchIdis null for a request removed from the list. Withdrawals carryfailReason. webhookUrlonpayouts.requestandPayoutItemInput: a payment's events go there, before its batch'swebhookUrland the webhook's URL.
payitgo.events.list(types:, after:, createdAfter:, limit:)replays the mode's events as their webhooks carried them: anEventPageofWebhookEvents andhasMore.Webhooks.eventsadds thepayout_batch.*,payout_item.*(withpayout_item.processing,payout_item.returned,payout_item.claimedandpayout_item.claim_expired),payout_wallet.withdrawn,payout_wallet.withdrawal_failed,payout_schedule.runandpayout_schedule.funding_neededevents.example/payouts.dartpays a client in test mode.
0.5.0 #
- Four new coins, and every coin comes with its ticker and logo
0.4.0 #
- The customer can change the coin: previousCoins, deposit to, and the widget's Change coin button
0.3.1 #
- React checkout widget: @payitgo/react joins the SDK releases
- Coin notes say how long a payment takes; native coins on their own network
0.3.0 #
- Breaking:
Future<bool> isLive()in place of thelivemodefield ofPayitgo, because a key does not say its mode.isLive()asks payitgo (GET /v1/webhook'slivemode) the first time and keeps the answer for the client's life. - The client takes any non-empty key: an empty one throws
ArgumentError(payitgo: the API key is required).
0.2.1 #
- Prices in other currencies:
payments.createtakespriceAmountandpriceCurrency(EUR, GBP, NGN…) instead ofamountUsd, converted at the rate of the moment; payments carrypriceAmount,priceCurrencyandpriceRate. - An example:
example/main.dartcreates a test payment and verifies its webhook.
0.2.0 #
- Test payments are simulated; dollar values on settlements and payouts
- QR code is the deposit address alone
0.1.1 #
- The source moved to https://github.com/payitgo/dart-sdk. No code changes.
0.1.0 #
- First release: payments (create, selectToken, list with its
storeIdfilter, get), tokens (for an amount given as a String or a num), and the webhook (IPN):webhooks.get,set,remove,testandconstructEvent, with the client'swebhookSecretand defaultwebhookUrl; a key-lessPayitgoCheckoutfor Flutter apps, whosewatchfollows a payment through a late payment;Depositgetters for every field the gateway sends;close()for the http.Client the library makes.