이 SDK를 사용하면 JavaScript 및 TypeScript에서 Changelly Fiat API를 사용할 수 있습니다. JavaScript 개발자는 Changelly 법정화폐 API 내에서 모든 메서드 호출을 자동화하는 편리한 기능을 갖춘 완전한 기능을 갖춘 라이브러리를 찾을 수 있습니다. TypeScript를 사용하는 개발자는 엄격한 유형에 대한 풍부한 정의를 찾을 수 있습니다.
메모. SDK 통합에 대해 질문이 있는 경우 주저하지 말고 [email protected]으로 이메일을 보내주세요.
이 튜토리얼은 Changelly Fiat API SDK를 사용하는 프로젝트 생성의 기본 사항을 안내합니다.
package.json
파일을 만듭니다. > npm init --y
tsconfig.json
파일을 생성하고, NodeJS에 내장된 대부분의 유형에 액세스합니다. > npm install typescript
> npx tsc --init
> npm install -D @types/node
> npm install @changelly/fiat-api-sdk-node
CHANGELLY_PRIVATE_KEY
및 CHANGELLY_PUBLIC_KEY
와 같은 환경 변수로 설정하세요.index.ts
파일을 생성합니다. import { ChangellyFiatClient } from "@changelly/fiat-api-sdk-node" ;
const client = new ChangellyFiatClient ( {
privateKey : process . env [ "CHANGELLY_PRIVATE_KEY" ] ,
publicKey : process . env [ "CHANGELLY_PUBLIC_KEY" ] ,
} ) ;
const providers = await client . getProviderList ( ) ;
const currencies = await client . getCurrencyList ( ) ;
console . log ( { providers , currencies } ) ;
Changelly Fiat API Node.js SDK 클래스.
ChangellyFiatClient 인스턴스를 생성합니다.
new ChangellyFiatClient (
params : ChangellyFiatClientParams
) : ChangellyFiatClient
매개변수
ChangellyFiatClient를 반환합니다 .
X-Api 서명을 빌드합니다.
buildSignature (
params : ChangellyBuildSignatureParams
) : string ;
매개변수
문자열 반환 — Changelly X-Api-Signature
X-Callback-Signature 주문을 확인합니다.
validateOrderCallbackSignature (
signature : string ,
orderId : string
) : boolean ;
매개변수
부울 반환 — 콜백 서명이 유효한가요?
사용자에게 On-Ramp 공급자에 대한 확장된 정보를 제공합니다.
getProviderList (
config ?: AxiosRequestConfig
) : Promise < ChangellyGetProviderListResponse [ ] > ;
매개변수
Promise<ChangellyGetProviderListResponse[]> 반환
지원되는 암호화폐 및 법정화폐 목록을 확인하세요.
getCurrencyList (
params ?: ChangellyGetCurrencyListParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyGetCurrencyListResponse [ ] > ;
매개변수
Promise<ChangellyGetCurrencyListResponse[]> 반환
암호화폐 구매가 지원되는 국가 목록을 확인하세요.
getCountryAvailabilityList (
params ?: ChangellyGetCountryAvailabilityParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyGetCountryAvailabilityResponse [ ] > ;
매개변수
Promise<ChangellyGetCountryAvailabilityResponse[]> 반환
On-Ramp 제공업체로부터 구매 제안 목록을 받으세요.
getOffers (
params : ChangellyGetOffersParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyGetOffersResponse [ ] > ;
매개변수
Promise<ChangellyGetOffersResponse[]> 반환
암호화폐 구매 주문을 생성하고 구매 페이지로의 리디렉션 URL을 받으세요. 요청에 선택적 매개변수가 제공되지 않은 경우 응답에 "null" 값과 함께 반환됩니다.
createOrder (
data : ChangellyCreateOrderParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyCreateOrderResponse > ;
매개변수
Promise<ChangellyCreateOrderResponse[]> 반환
주어진 지갑 주소와 (선택사항) 추가 ID가 해당 통화에 유효한지 확인하세요.
validateWalletAddress (
data : ChangellyValidateWalletAddressParams ,
config ?: AxiosRequestConfig
) : Promise < ChangellyValidateWalletAddressResponse > ;
매개변수
Promise<ChangellyValidateWalletAddressResponse[]> 반환
interface ChangellyFiatClientParams {
publicKey : string ;
privateKey : string ;
callbackPublicKey ?: string ;
baseUrl ?: string ;
}
속성
공개키 | 끈 | Changelly Fiat API 공개 키. |
개인키 | 끈 | Changelly Fiat API 개인 키. |
콜백공개키 | 끈 | (선택사항) Changelly Fiat API 콜백 공개 키. |
기본 URL | 끈 | (선택사항) Changelly Fiat API의 기본 URL입니다. 기본적으로 |
interface ChangellyBuildSignatureParams {
baseUrl ?: string ;
pathname : ChangellyRequestUrl | string ;
params ?:
| ChangellyGetCurrencyListParams
| ChangellyGetCountryAvailabilityParams
| ChangellyGetOffersParams ;
data ?: ChangellyCreateOrderParams | ChangellyValidateWalletAddressParams ;
}
속성
기본 URL | 끈 | (선택사항) 기본 URL. 기본적으로 |
경로명 | ChangellyRequestUrl | 끈 | 주소를 요청하세요. |
매개변수 | ChangellyGetCurrencyListParams | ChangellyGetCountryAvailabilityParams | ChangellyGetOffersParams | (선택사항) 쿼리 매개변수를 요청합니다. |
데이터 | ChangellyCreateOrderParams | ChangellyValidateWalletAddressParams | (선택 사항) 요청 본문 매개변수입니다. |
interface ChangellyGetProviderListResponse {
code : ChangellyProvider ;
name : string ;
trustPilotRating : string ;
iconUrl : string ;
}
속성
암호 | Changelly공급자 | 온램프 제공업체 코드. |
이름 | 끈 | On-Ramp 제공업체의 이름입니다. |
신뢰파일럿평가 | 끈 | Trustpilot에 대한 공급자 등급입니다. |
아이콘URL | 끈 | On-Ramp 제공업체 아이콘의 URL입니다. |
interface ChangellyGetCurrencyListParams {
type ?: ChangellyCurrency ;
providerCode ?: ChangellyProvider ;
}
속성
유형 | Changelly통화 | (선택사항) 통화 유형입니다. 통화 유형을 지정하지 않으면 엔드포인트는 법정화폐와 암호화폐를 모두 반환합니다. |
공급자 코드 | Changelly공급자 | (선택 사항) 보려는 통화의 제공자입니다. On-Ramp 공급자 코드가 지정되지 않은 경우 엔드포인트는 모든 공급자의 지원되는 통화를 반환합니다. |
interface ChangellyGetCurrencyListResponse {
ticker : string ;
name : string ;
type : ChangellyCurrency ;
extraIdName : string | null ;
iconUrl : string ;
precision : string ;
}
속성
증권 시세 표시기 | 끈 | 대문자로 표시된 통화 표시기입니다. 이는 통화의 고유 식별자입니다. |
이름 | 끈 | 인터페이스에서 지정할 수 있는 통화 이름입니다. |
유형 | Changelly통화 | 통화 유형. |
extraIdName | 문자열 | null | 암호화폐의 추가 ID 이름(예: "메모") XRP, XLM, EOS, BNB 통화에 필요합니다. 추가 ID가 없는 법정화폐 및 암호화폐의 경우 extraIdName은 null입니다. 통화에 추가 ID가 있는 경우 |
아이콘URL | 끈 | 통화 아이콘의 URL입니다. |
정도 | 끈 | 통화 정밀도. 법정화폐의 경우 항상 2와 같습니다. |
interface ChangellyGetCountryAvailabilityParams {
providerCode ?: ChangellyProvider ;
}
속성
(선택 사항) 공급자 코드 | Changelly공급자 | (선택 사항) 보려는 국가의 제공업체입니다. On-Ramp 공급자 코드가 지정되지 않은 경우 엔드포인트는 모든 공급자의 지원되는 국가를 반환합니다. |
interface ChangellyGetCountryAvailabilityResponse {
code : ChangellyProvider ;
name : string ;
states ?: ChangellyState [ ] ;
}
속성
암호 | Changelly공급자 | 온램프 제공업체 코드. |
이름 | 끈 | On-Ramp 제공업체의 이름입니다. |
주 | Changelly상태 [] | (선택사항) 미국 주. 국가 코드가 US인 경우 반환됩니다. |
interface ChangellyGetOffersParams {
providerCode ?: ChangellyProvider ;
externalUserId ?: string ;
currencyFrom : string ;
currencyTo : string ;
amountFrom : string ;
country : string ;
state ?: string ;
ip ?: string ;
}
속성
공급자 코드 | Changelly공급자 | (선택 사항) 온램프 제공자 코드. |
외부 사용자 ID | 끈 | (선택사항) 귀하가 제공한 사용자 ID입니다. |
통화From | 끈 | 대문자로 표시된 지불 통화의 티커입니다. |
통화받는 사람 | 끈 | 대문자로 표시된 지급 통화의 티커입니다. |
금액From | 끈 | 사용자가 지불할 통화 금액입니다. |
국가 | 끈 | 국가 ISO 3166-1 코드(Alpha-2). |
상태 | 끈 | (선택 사항) ISO 3166-2 코드를 명시합니다. 제공된 국가가 미국인 경우 필수입니다. |
아이피 | 끈 | (선택 사항) 사용자의 IP 주소입니다. |
성공할 수도 있고 실패할 수도 있습니다.
interface Offer {
providerCode : ChangellyProvider ;
rate : string ;
invertedRate : string ;
fee : string ;
amountFrom : string ;
amountExpectedTo : string ;
paymentMethodOffers : ChangellyPaymentMethodOffer [ ] ;
}
속성
공급자 코드 | Changelly공급자 | 온램프 제공업체 코드. |
비율 | 끈 | 모든 결제수단 중 구매율이 가장 높습니다. 요금에는 모든 수수료가 포함되어 있습니다. |
역률 | 끈 | 구매율 반전. |
요금 | 끈 | 모든 결제수단 중 총 구매수수료 중 가장 낮은 금액입니다. |
금액From | 끈 | 사용자가 지불할 통화 금액입니다. |
예상금액 | 끈 | 사용자가 구매 후 얻을 것으로 예상되는 모든 결제 방법 중 가장 큰 금액입니다. |
결제방법제안 | Changelly결제 방법 제안 [] | 사용 가능한 각 결제 유형에 대한 구매 세부정보입니다. '카드' 이외의 결제수단은 추후 제공될 예정입니다. |
interface Offer {
providerCode : ChangellyProvider ;
errorType :
| ChangellyErrorType . Timeout
| ChangellyErrorType . Unavailable
| ChangellyErrorType . Limits
| ChangellyErrorType . Country
| ChangellyErrorType . State
| ChangellyErrorType . Currency
| ChangellyErrorType . PaymentMethod
| ChangellyErrorType . InvalidOffer ;
errorMessage : string ;
errorDetails : ChangellyErrorDetails [ ] | null ;
}
속성
공급자 코드 | Changelly공급자 | 온램프 제공업체 코드. |
오류 유형 | ChangellyErrorType (시간 초과, 사용할 수 없음, 한도, 국가, 주, 통화, 지불 방법, InvalidOffer) | 오류 유형. |
오류 메시지 | 끈 | 오류 메시지. |
오류세부정보 | ChangellyErrorDetails [] | null | 오류 세부정보. 오류에 세부 정보가 없으면 |
type ChangellyCreateOrderParams = {
externalOrderId : string ;
externalUserId : string ;
providerCode : ChangellyProvider ;
currencyFrom : string ;
currencyTo : string ;
amountFrom : string ;
country : string ;
state ?: string ;
ip ?: string ;
walletAddress : string ;
walletExtraId ?: string ;
paymentMethod ?: ChangellyPaymentMethod ;
userAgent ?: string ;
metadata ?: Record < string , unknown > ;
} ;
속성
외부 주문 ID | 끈 | 귀하가 제공한 주문 ID입니다. |
외부 사용자 ID | 끈 | 귀하가 제공한 사용자 ID입니다. |
공급자 코드 | Changelly공급자 | 온램프 제공업체 코드. |
통화From | 끈 | 대문자로 표시된 지불 통화의 티커입니다. |
통화받는 사람 | 끈 | 대문자로 표시된 지급 통화의 티커입니다. |
금액From | 끈 | 사용자가 지불할 통화 금액입니다. |
국가 | 끈 | 국가 ISO 3166-1 코드(Alpha-2). |
상태 | 끈 | (선택 사항) ISO 3166-2 코드를 명시합니다. 제공된 국가가 미국인 경우 필수입니다. |
아이피 | 끈 | (선택 사항) 사용자의 IP 주소입니다. |
지갑주소 | 끈 | 받는 사람 지갑 주소입니다. 다음은 이 매개변수의 2가지 간단한 사용 사례입니다.
|
지갑추가 ID | 끈 | (선택) 거래 처리를 위해 추가 ID를 사용하는 통화(XRP, XLM, EOS, BNB)의 지갑 주소에 필요한 속성입니다. |
결제방법 | Changelly결제방법 | (선택사항) 결제 방법 코드입니다. |
사용자 에이전트 | 끈 | (선택 사항) 사용자 에이전트. |
메타데이터 | 레코드<문자열, 알 수 없음> | (선택 사항) 필요한 매개변수를 포함할 수 있는 메타데이터 개체입니다. |
interface ChangellyCreateOrderResponse {
redirectUrl : string ;
orderId : string ;
externalUserId : string ;
externalOrderId : string ;
providerCode : ChangellyProvider ;
currencyFrom : string ;
currencyTo : string ;
amountFrom : string ;
country : string ;
state : string | null ;
ip : string | null ;
walletAddress : string ;
walletExtraId : string | null ;
paymentMethod : ChangellyPaymentMethod | null ;
userAgent : string | null ;
metadata : Record < string , unknown > | null ;
createdAt : string ;
}
속성
리디렉션 URL | 끈 | 공급자의 구매 페이지에 대한 URL입니다. |
주문 ID | 끈 | Fiat API에서 제공하는 내부 주문 ID입니다. |
외부 사용자 ID | 끈 | 귀하가 제공한 사용자 ID입니다. |
외부 주문 ID | 끈 | 귀하가 제공한 주문 ID입니다. |
공급자 코드 | Changelly공급자 | 온램프 제공업체 코드. |
통화From | 끈 | 대문자로 표시된 지불 통화의 티커입니다. |
통화받는 사람 | 끈 | 대문자로 표시된 지급 통화의 티커입니다. |
금액From | 끈 | 사용자가 지불할 통화 금액입니다. |
국가 | 끈 | 국가 ISO 3166-1 코드(Alpha-2). |
상태 | 문자열 | null | ISO 3166-2 코드를 명시합니다. 제공된 국가가 미국이 아닌 경우 null이 됩니다. |
아이피 | 문자열 | null | 사용자의 IP 주소. |
지갑주소 | 끈 | 받는 사람 지갑 주소입니다. |
지갑추가 ID | 문자열 | null | 거래 처리를 위해 추가 ID를 사용하는 통화(XRP, XLM, EOS, BNB)의 지갑 주소에 필요한 속성입니다. |
결제방법 | Changelly결제방법 | null | 결제수단 코드입니다. |
사용자 에이전트 | 문자열 | null | 사용자 에이전트. |
메타데이터 | 레코드<문자열, 알 수 없음> | null | 필요한 매개변수를 포함할 수 있는 메타데이터 개체입니다. 요청에 메타데이터 개체를 제공하지 않으면 응답의 메타데이터에 null이 반환됩니다. 요청에 빈 개체를 지정하면 응답에 빈 개체가 반환됩니다. |
생성 시간 | 끈 | ISO 8601 형식의 시간입니다. |
interface ChangellyValidateWalletAddressParams {
currency : string ;
walletAddress : string ;
walletExtraId ?: string ;
}
속성
통화 | 끈 | 대문자로 된 암호화폐 티커. |
지갑주소 | 끈 | 받는 사람 지갑 주소입니다. |
지갑추가 ID | 끈 | (선택) 거래 처리를 위해 추가 ID를 사용하는 통화(XRP, XLM, EOS, BNB)의 지갑 주소에 필요한 속성입니다. |
interface ChangellyValidateWalletAddressResponse {
result : boolean ;
cause : "walletAddress" | "walletExtraId" | null ;
}
속성
결과 | 불리언 | 지갑 주소나 추가 ID가 잘못된 경우 거짓입니다. |
원인 | "지갑주소" | "walletExtraId" | null | 지갑 주소 또는 추가 ID가 잘못된지 여부를 지정합니다. 결과가 true이면 원인은 null과 같습니다. |
interface ChangellyState {
code : string ;
name : string ;
}
속성
암호 | 끈 | ISO 3166-2 코드를 명시합니다. |
이름 | 끈 | 주 이름. |
interface ChangellyPaymentMethodOffer {
amountExpectedTo : string ;
method : ChangellyPaymentMethod ;
methodName : string ;
invertedRate : string ;
fee : string ;
}
속성
예상금액 | 끈 | 사용자가 구매 후 얻을 것으로 예상되는 자금의 금액입니다. |
방법 | Changelly결제방법 | 결제수단 코드입니다. |
메소드 이름 | 끈 | 결제 수단 이름입니다. |
역전율 | 끈 | 모든 수수료가 포함된 현재 구매 요율입니다. |
요금 | 끈 | 총 구매 수수료입니다. |
interface ChangellyErrorDetails {
cause : string ;
value : string ;
}
속성
원인 | 끈 | 오류 원인. 예를 들어 유효성 검사 오류 유형에 대한 누락된 요청 매개변수와 동일할 수 있습니다. |
값 | 끈 | 오류 값입니다. |
enum ChangellyRequestUrl {
ProvderList = "/v1/providers" ,
CurrencyList = "/v1/currencies" ,
CountryAvailability = "/v1/available-countries" ,
GetOffers = "/v1/offers" ,
CreateOrder = "/v1/orders" ,
ValidateWalletAddress = "/v1/validate-address" ,
}
회원
enum ChangellyProvider {
Moonpay = "moonpay" ,
Banxa = "banxa" ,
Wert = "wert" ,
}
회원
enum ChangellyCurrency {
Crypto = "crypto" ,
Fiat = "fiat"