Tarkista resurssien yhteensopivuus
Ennen tarjousta vahvista, että:- Kyky on valmis, kuuluu asiakkaalle ja vastaa aiottua suuntaa ja menetelmää.
- Vakaakolikkolähde on aktiivinen luotu lompakko, joka tukee syötteen valuuttaa.
- Lompakosta lompakkoon -resurssit käyttävät samaa valuuttaa ja verkkoa.
- Fiat-maksu ulos -tili tai -kohde on valmis ja tukee lähtövaluuttaa ja -menetelmää.
Valitse tarkka summa
Luo tarjousPOST /v3/quotes -toiminnolla. Lähetä yksi summapuoli, molemmat valuutat ja vastauksesta johdetut resurssi-ID:t näillä otsakkeilla:
- Tarkka in
- Tarkka out
Aseta
in.amount ja jätä out.amount pois. Vastaus laskee, mitä kohde vastaanottaa.data.id, data.status, data.expiresAt, palautetut haarat, kurssi ja maksut. Käytä palautettuja desimaalimerkkijonoja; älä laske suoritettavia summia uudelleen liukulukuaritmetiikalla.
Vakaakolikko-rahoitetun tarkka-out-tarjouksen jälkeen lue GET /v3/customers/{customerId}/accounts/{accountId}. Vertaa nykyistä lähteen balances[].available-arvoa syötteen valuutalle palautettuun data.in.amount-arvoon. Jos varat eivät riitä, vaihda tai rahoita lähde ja luo uusi tarjous. Fiat-rahoitetut tarkka-out-tarjoukset eivät käytä tätä lähdelompakon saldoportia.
Suorita kerran ja toivu turvallisesti
Lue nykyinen tarjousGET /v3/quotes/{quoteId} -toiminnolla. Suorita vain, kun sen tila ja expiresAt sallivat sen.
Luo siirto POST /v3/transfers -toiminnolla:
Idempotency-Key tälle aiotulle siirrolle ja tallenna se ennen pyynnön lähettämistä. Jos vastaus katoaa, uudelleenyritä samaa menetelmää, polkua, runkoa ja avainta. Älä luo toista suoritusavainta epävarman tuloksen toipumiseen.
Jos API palauttaa quote_already_executed, käytä sen transferId-arvoa jatkaaksesi olemassa olevalla siirrolla. Idempotentti toisto voi myös palauttaa Idempotency-Replayed: true.
Seuraa nykyistä siirtoa
LueGET /v3/transfers/{transferId} luonnin jälkeen ja jokaisen webhookin jälkeen. Tallenna uusimmat data.state, data.stateDetail ja data.openTaskIds.
Kun tehtävän ID:t ovat avoinna, hae GET /v3/transfers/{transferId}/tasks ja suorita jokainen tehtävä sen nykyistä versiota ja vaatimuksia käyttäen.
Sisääntulevaa liikettä varten GET /v3/transfers/{transferId}/instructions voi palauttaa siirtokohtaisia rahoitustietoja. Renderöi vain palautettu ohjemuunnelma ja tarkka viite.
Seuraavaksi toteuta webhookit, jotta jokainen asynkroninen siirtopäivitys tulee samaan nykyisen tilan käsittelypolkuun.