dutchman-bridge 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export { client, type CreateClientConfig } from './client.gen';
2
2
  export { Bank, Countries, Customers, DutchmanBridge, Features, GlobalSend, Kyc, type Options, Profile, Ramp, Receiving, Send, Wallet, Webhook } from './sdk.gen';
3
- export type { AddAccountDto, BankAddAccountData, BankAddAccountResponse, BankAddAccountResponses, BankBanksData, BankBanksResponse, BankBanksResponses, BankDeleteAccountData, BankDeleteAccountResponse, BankDeleteAccountResponses, BankGetAccountsData, BankGetAccountsResponse, BankGetAccountsResponses, BankSetDefaultAccountData, BankSetDefaultAccountResponse, BankSetDefaultAccountResponses, BankVerifyAccountData, BankVerifyAccountResponse, BankVerifyAccountResponses, BlockchainNetwork, CheckSelfieDto, ClientOptions, CountriesListData, CountriesListResponse, CountriesListResponses, CustomerSellDto, CustomersFullData, CustomersFullResponse, CustomersFullResponses, CustomersGetData, CustomersGetResponse, CustomersGetResponses, CustomersRegisterData, CustomersRegisterResponse, CustomersRegisterResponses, FeaturesListData, FeaturesListResponse, FeaturesListResponses, FeatureStatus, FundingChargeStatus, GetQuoteDto, GlobalSendBeneficiaryDto, GlobalSendCorridorsData, GlobalSendCorridorsResponse, GlobalSendCorridorsResponses, GlobalSendInitiateData, GlobalSendInitiateResponse, GlobalSendInitiateResponses, GlobalSendQuoteData, GlobalSendQuoteDto, GlobalSendQuoteResponse, GlobalSendQuoteResponses, GlobalSendVerificationStatusData, GlobalSendVerificationStatusResponse, GlobalSendVerificationStatusResponses, InitiateFundingChargeDto, InitiateGlobalSendDto, KycDocumentData, KycDocumentResponse, KycDocumentResponses, KycReverificationData, KycReverificationResponse, KycReverificationResponses, KycSelfieCheckRouteData, KycSelfieCheckRouteResponse, KycSelfieCheckRouteResponses, KycStatus, KycStatusData, KycStatusResponse, KycStatusResponses, KycSummaryData, KycSummaryResponse, KycSummaryResponses, KycTier1Data, KycTier1Response, KycTier1Responses, KycTier2Data, KycTier2Response, KycTier2Responses, KycTier3Data, KycTier3Response, KycTier3Responses, LedgerEntryType, PartnerAccountVerificationDto, PartnerBalanceDto, PartnerBankAccountDto, PartnerBankDto, PartnerBuyResultDto, PartnerCorridorDto, PartnerCountryDto, PartnerCustomerDto, PartnerCustomerKycSnapshotDto, PartnerCustomerSnapshotDto, PartnerCustomerWalletSnapshotDto, PartnerDepositAddressDto, PartnerFeatureDto, PartnerFundingChargeDto, PartnerGlobalSendQuoteDto, PartnerGlobalSendResultDto, PartnerKycRecordDto, PartnerKycSubmissionDto, PartnerLedgerEntryDto, PartnerNetworkDto, PartnerRampQuoteDto, PartnerRateDto, PartnerReceivingAccountDto, PartnerReceivingActivityDto, PartnerReverificationRequestDto, PartnerSelfieCheckDto, PartnerSellResultDto, PartnerSendNetworkDto, PartnerSendQuoteDto, PartnerSendResultDto, PartnerTierStateDto, PartnerTierStatus, PartnerUploadedDocumentDto, PartnerVerificationInput, PartnerVerificationRecordDto, PartnerVerificationSummaryDto, PartnerVerificationTiersDto, PartnerVirtualAccountDto, PartnerWebhookConfigDto, PartnerWebhookDeliveryDetailDto, PartnerWebhookDeliveryDto, PartnerWebhookSecretDto, PartnerWebhookTestDto, PartnerWithdrawalBankAccountDto, PartnerWithdrawalDto, PartnerWithdrawalQuoteDto, ProfileChangePasswordData, ProfileChangePasswordResponse, ProfileChangePasswordResponses, ProfileDeleteAccountData, ProfileDeleteAccountResponse, ProfileDeleteAccountResponses, ProfileProfileData, ProfileProfileResponse, ProfileProfileResponses, ProfileUpdateProfileData, ProfileUpdateProfileResponse, ProfileUpdateProfileResponses, ProfileWithdrawalsData, ProfileWithdrawalsResponse, ProfileWithdrawalsResponses, QuoteSendDto, RampBuyData, RampBuyQuoteData, RampBuyQuoteResponse, RampBuyQuoteResponses, RampBuyResponse, RampBuyResponses, RampRateData, RampRateResponse, RampRateResponses, RampSellData, RampSellNetworksData, RampSellNetworksResponse, RampSellNetworksResponses, RampSellQuoteData, RampSellQuoteResponse, RampSellQuoteResponses, RampSellResponse, RampSellResponses, ReceivingActivityData, ReceivingActivityResponse, ReceivingActivityResponses, ReceivingCurrenciesData, ReceivingCurrenciesResponse, ReceivingCurrenciesResponses, ReceivingListData, ReceivingListResponse, ReceivingListResponses, ReceivingOpenData, ReceivingOpenResponse, ReceivingOpenResponses, ReceivingRefreshData, ReceivingRefreshResponse, ReceivingRefreshResponses, RegisterCustomerDto, ResetPassword, ReverificationItem, ReverificationStatus, SendDto, SendNetworksData, SendNetworksResponse, SendNetworksResponses, SendQuoteData, SendQuoteResponse, SendQuoteResponses, SendSubmitData, SendSubmitResponse, SendSubmitResponses, SetWebhookUrlDto, SubmitTier3Dto, Tier1KycDto, Tier2KycDto, UpdateCustomerProfileDto, VerifyAccountNumberInput, WalletAddressesData, WalletAddressesResponse, WalletAddressesResponses, WalletBalanceData, WalletBalanceResponse, WalletBalanceResponses, WalletFundingChargesData, WalletFundingChargesResponse, WalletFundingChargesResponses, WalletInitiateFundingChargeData, WalletInitiateFundingChargeResponse, WalletInitiateFundingChargeResponses, WalletStreamBalanceData, WalletStreamBalanceResponses, WalletTransactionsData, WalletTransactionsResponse, WalletTransactionsResponses, WalletVirtualAccountForData, WalletVirtualAccountForResponse, WalletVirtualAccountForResponses, WalletWithdrawalQuoteData, WalletWithdrawalQuoteResponse, WalletWithdrawalQuoteResponses, WalletWithdrawData, WalletWithdrawResponse, WalletWithdrawResponses, WebhookConfigData, WebhookConfigResponse, WebhookConfigResponses, WebhookDeliveriesData, WebhookDeliveriesResponse, WebhookDeliveriesResponses, WebhookDeliveryData, WebhookDeliveryResponse, WebhookDeliveryResponses, WebhookDeliveryStatus, WebhookReplayData, WebhookReplayResponse, WebhookReplayResponses, WebhookRotateSecretData, WebhookRotateSecretResponse, WebhookRotateSecretResponses, WebhookSetUrlData, WebhookSetUrlResponse, WebhookSetUrlResponses, WithdrawalStatus, WithdrawDto } from './types.gen';
3
+ export type { AddAccountDto, BankAddAccountData, BankAddAccountResponse, BankAddAccountResponses, BankBanksData, BankBanksResponse, BankBanksResponses, BankDeleteAccountData, BankDeleteAccountResponse, BankDeleteAccountResponses, BankGetAccountsData, BankGetAccountsResponse, BankGetAccountsResponses, BankSetDefaultAccountData, BankSetDefaultAccountResponse, BankSetDefaultAccountResponses, BankVerifyAccountData, BankVerifyAccountResponse, BankVerifyAccountResponses, BlockchainNetwork, BusinessDetailsDto, CheckSelfieDto, ClientOptions, CountriesListData, CountriesListResponse, CountriesListResponses, CustomerSellDto, CustomersFullData, CustomersFullResponse, CustomersFullResponses, CustomersGetData, CustomersGetResponse, CustomersGetResponses, CustomersRegisterData, CustomersRegisterResponse, CustomersRegisterResponses, FeaturesListData, FeaturesListResponse, FeaturesListResponses, FeatureStatus, FundingChargeStatus, GetQuoteDto, GlobalSendBeneficiaryDto, GlobalSendCorridorsData, GlobalSendCorridorsResponse, GlobalSendCorridorsResponses, GlobalSendInitiateData, GlobalSendInitiateResponse, GlobalSendInitiateResponses, GlobalSendQuoteData, GlobalSendQuoteDto, GlobalSendQuoteResponse, GlobalSendQuoteResponses, GlobalSendVerificationStatusData, GlobalSendVerificationStatusResponse, GlobalSendVerificationStatusResponses, InitiateFundingChargeDto, InitiateGlobalSendDto, KycDocumentData, KycDocumentResponse, KycDocumentResponses, KycReverificationData, KycReverificationResponse, KycReverificationResponses, KycSelfieCheckRouteData, KycSelfieCheckRouteResponse, KycSelfieCheckRouteResponses, KycStatus, KycStatusData, KycStatusResponse, KycStatusResponses, KycSummaryData, KycSummaryResponse, KycSummaryResponses, KycTier1Data, KycTier1Response, KycTier1Responses, KycTier2Data, KycTier2Response, KycTier2Responses, KycTier3Data, KycTier3Response, KycTier3Responses, LedgerEntryType, PartnerAccountVerificationDto, PartnerBalanceDto, PartnerBankAccountDto, PartnerBankDto, PartnerBusinessDto, PartnerBuyResultDto, PartnerCorridorDto, PartnerCountryDto, PartnerCustomerDto, PartnerCustomerKycSnapshotDto, PartnerCustomerSnapshotDto, PartnerCustomerWalletSnapshotDto, PartnerDepositAddressDto, PartnerFeatureDto, PartnerFundingChargeDto, PartnerGlobalSendQuoteDto, PartnerGlobalSendResultDto, PartnerKycRecordDto, PartnerKycSubmissionDto, PartnerLedgerEntryDto, PartnerNetworkDto, PartnerRampQuoteDto, PartnerRateDto, PartnerReceivingAccountDto, PartnerReceivingActivityDto, PartnerReverificationRequestDto, PartnerSelfieCheckDto, PartnerSellResultDto, PartnerSendNetworkDto, PartnerSendQuoteDto, PartnerSendResultDto, PartnerTierStateDto, PartnerTierStatus, PartnerUploadedDocumentDto, PartnerVerificationInput, PartnerVerificationRecordDto, PartnerVerificationSummaryDto, PartnerVerificationTiersDto, PartnerVirtualAccountDto, PartnerWebhookConfigDto, PartnerWebhookDeliveryDetailDto, PartnerWebhookDeliveryDto, PartnerWebhookSecretDto, PartnerWebhookTestDto, PartnerWithdrawalBankAccountDto, PartnerWithdrawalDto, PartnerWithdrawalQuoteDto, ProfileChangePasswordData, ProfileChangePasswordResponse, ProfileChangePasswordResponses, ProfileDeleteAccountData, ProfileDeleteAccountResponse, ProfileDeleteAccountResponses, ProfileProfileData, ProfileProfileResponse, ProfileProfileResponses, ProfileUpdateProfileData, ProfileUpdateProfileResponse, ProfileUpdateProfileResponses, ProfileWithdrawalsData, ProfileWithdrawalsResponse, ProfileWithdrawalsResponses, QuoteSendDto, RampBuyData, RampBuyQuoteData, RampBuyQuoteResponse, RampBuyQuoteResponses, RampBuyResponse, RampBuyResponses, RampRateData, RampRateResponse, RampRateResponses, RampSellData, RampSellNetworksData, RampSellNetworksResponse, RampSellNetworksResponses, RampSellQuoteData, RampSellQuoteResponse, RampSellQuoteResponses, RampSellResponse, RampSellResponses, ReceivingActivityData, ReceivingActivityResponse, ReceivingActivityResponses, ReceivingCurrenciesData, ReceivingCurrenciesResponse, ReceivingCurrenciesResponses, ReceivingListData, ReceivingListResponse, ReceivingListResponses, ReceivingOpenData, ReceivingOpenResponse, ReceivingOpenResponses, ReceivingRefreshData, ReceivingRefreshResponse, ReceivingRefreshResponses, RegisterCustomerDto, ResetPassword, ReverificationItem, ReverificationStatus, SendDto, SendNetworksData, SendNetworksResponse, SendNetworksResponses, SendQuoteData, SendQuoteResponse, SendQuoteResponses, SendSubmitData, SendSubmitResponse, SendSubmitResponses, SetWebhookUrlDto, SubmitTier3Dto, Tier1KycDto, Tier2KycDto, UpdateCustomerProfileDto, VerifyAccountNumberInput, WalletAddressesData, WalletAddressesResponse, WalletAddressesResponses, WalletBalanceData, WalletBalanceResponse, WalletBalanceResponses, WalletFundingChargesData, WalletFundingChargesResponse, WalletFundingChargesResponses, WalletInitiateFundingChargeData, WalletInitiateFundingChargeResponse, WalletInitiateFundingChargeResponses, WalletStreamBalanceData, WalletStreamBalanceResponses, WalletTransactionsData, WalletTransactionsResponse, WalletTransactionsResponses, WalletVirtualAccountForData, WalletVirtualAccountForResponse, WalletVirtualAccountForResponses, WalletWithdrawalQuoteData, WalletWithdrawalQuoteResponse, WalletWithdrawalQuoteResponses, WalletWithdrawData, WalletWithdrawResponse, WalletWithdrawResponses, WebhookConfigData, WebhookConfigResponse, WebhookConfigResponses, WebhookDeliveriesData, WebhookDeliveriesResponse, WebhookDeliveriesResponses, WebhookDeliveryData, WebhookDeliveryResponse, WebhookDeliveryResponses, WebhookDeliveryStatus, WebhookReplayData, WebhookReplayResponse, WebhookReplayResponses, WebhookRotateSecretData, WebhookRotateSecretResponse, WebhookRotateSecretResponses, WebhookSetUrlData, WebhookSetUrlResponse, WebhookSetUrlResponses, WithdrawalStatus, WithdrawDto } from './types.gen';
package/dist/sdk.gen.d.ts CHANGED
@@ -189,7 +189,7 @@ export declare class GlobalSend extends HeyApiClient {
189
189
  }
190
190
  export declare class Ramp extends HeyApiClient {
191
191
  /**
192
- * Price a buy (fiat -> USDT) against the customer's fiat balance
192
+ * Price a buy (fiat -> stablecoin) against the customer's fiat balance
193
193
  */
194
194
  buyQuote<ThrowOnError extends boolean = false>(options: Options<RampBuyQuoteData, ThrowOnError>): RequestResult<RampBuyQuoteResponses, unknown, ThrowOnError>;
195
195
  /**
@@ -197,21 +197,21 @@ export declare class Ramp extends HeyApiClient {
197
197
  */
198
198
  buy<ThrowOnError extends boolean = false>(options: Options<RampBuyData, ThrowOnError>): RequestResult<RampBuyResponses, unknown, ThrowOnError>;
199
199
  /**
200
- * Networks the customer can deposit USDT on
200
+ * Networks the customer can deposit stablecoins on
201
201
  */
202
202
  sellNetworks<ThrowOnError extends boolean = false>(options: Options<RampSellNetworksData, ThrowOnError>): RequestResult<RampSellNetworksResponses, unknown, ThrowOnError>;
203
203
  /**
204
- * Live all-in USDT rates in the customer's local fiat, for previewing a conversion
204
+ * Live all-in stablecoin rates in the customer's local fiat, for previewing a conversion
205
205
  *
206
- * Rates include our spread and every fee, so amount * rate is what the customer pays or receives. Pass ?amount (USDT) to fold the fixed exchange fee into sellRate for that amount. Does not lock a rate -- checkout still goes through the quote routes.
206
+ * Rates include our spread and every fee, so amount * rate is what the customer pays or receives. Pass ?asset to price a specific stablecoin (default RAMP_DEFAULT_ASSET) and ?amount to fold the fixed exchange fee into sellRate for that amount. Does not lock a rate -- checkout still goes through the quote routes.
207
207
  */
208
208
  rate<ThrowOnError extends boolean = false>(options: Options<RampRateData, ThrowOnError>): RequestResult<RampRateResponses, unknown, ThrowOnError>;
209
209
  /**
210
- * Price a sell (USDT -> fiat) against the customer's USDT balance
210
+ * Price a sell (stablecoin -> fiat) against the customer's balance
211
211
  */
212
212
  sellQuote<ThrowOnError extends boolean = false>(options: Options<RampSellQuoteData, ThrowOnError>): RequestResult<RampSellQuoteResponses, unknown, ThrowOnError>;
213
213
  /**
214
- * Execute a sell from the customer's USDT balance
214
+ * Execute a sell from the customer's stablecoin balance
215
215
  */
216
216
  sell<ThrowOnError extends boolean = false>(options: Options<RampSellData, ThrowOnError>): RequestResult<RampSellResponses, unknown, ThrowOnError>;
217
217
  }
package/dist/sdk.gen.js CHANGED
@@ -444,7 +444,7 @@ class GlobalSend extends HeyApiClient {
444
444
  exports.GlobalSend = GlobalSend;
445
445
  class Ramp extends HeyApiClient {
446
446
  /**
447
- * Price a buy (fiat -> USDT) against the customer's fiat balance
447
+ * Price a buy (fiat -> stablecoin) against the customer's fiat balance
448
448
  */
449
449
  buyQuote(options) {
450
450
  return (options.client ?? this.client).post({
@@ -472,7 +472,7 @@ class Ramp extends HeyApiClient {
472
472
  });
473
473
  }
474
474
  /**
475
- * Networks the customer can deposit USDT on
475
+ * Networks the customer can deposit stablecoins on
476
476
  */
477
477
  sellNetworks(options) {
478
478
  return (options.client ?? this.client).get({
@@ -482,9 +482,9 @@ class Ramp extends HeyApiClient {
482
482
  });
483
483
  }
484
484
  /**
485
- * Live all-in USDT rates in the customer's local fiat, for previewing a conversion
485
+ * Live all-in stablecoin rates in the customer's local fiat, for previewing a conversion
486
486
  *
487
- * Rates include our spread and every fee, so amount * rate is what the customer pays or receives. Pass ?amount (USDT) to fold the fixed exchange fee into sellRate for that amount. Does not lock a rate -- checkout still goes through the quote routes.
487
+ * Rates include our spread and every fee, so amount * rate is what the customer pays or receives. Pass ?asset to price a specific stablecoin (default RAMP_DEFAULT_ASSET) and ?amount to fold the fixed exchange fee into sellRate for that amount. Does not lock a rate -- checkout still goes through the quote routes.
488
488
  */
489
489
  rate(options) {
490
490
  return (options.client ?? this.client).get({
@@ -494,7 +494,7 @@ class Ramp extends HeyApiClient {
494
494
  });
495
495
  }
496
496
  /**
497
- * Price a sell (USDT -> fiat) against the customer's USDT balance
497
+ * Price a sell (stablecoin -> fiat) against the customer's balance
498
498
  */
499
499
  sellQuote(options) {
500
500
  return (options.client ?? this.client).post({
@@ -508,7 +508,7 @@ class Ramp extends HeyApiClient {
508
508
  });
509
509
  }
510
510
  /**
511
- * Execute a sell from the customer's USDT balance
511
+ * Execute a sell from the customer's stablecoin balance
512
512
  */
513
513
  sell(options) {
514
514
  return (options.client ?? this.client).post({
@@ -1,6 +1,24 @@
1
1
  export type ClientOptions = {
2
2
  baseUrl: 'https://app.dutchmannetwork.online' | (string & {});
3
3
  };
4
+ export type PartnerBusinessDto = {
5
+ legalName: string;
6
+ tradingName: string | null;
7
+ registrationNumber: string;
8
+ /**
9
+ * Country of incorporation.
10
+ */
11
+ country: string;
12
+ /**
13
+ * KYB state, in the same words a person's KYC uses. REVIEW means a human is looking at it -- including when the register was simply unreachable, which is not the same as a refusal.
14
+ */
15
+ kybStatus: 'PENDING' | 'REVIEW' | 'APPROVED' | 'REJECTED';
16
+ kybCheckedAt: string | null;
17
+ /**
18
+ * Why it did not clear. Null once approved.
19
+ */
20
+ kybRejectionReason: string | null;
21
+ };
4
22
  export type PartnerCustomerDto = {
5
23
  id: string;
6
24
  firstName: string;
@@ -21,6 +39,37 @@ export type PartnerCustomerDto = {
21
39
  verifiedAt: string | null;
22
40
  createdAt: string;
23
41
  updatedAt: string;
42
+ /**
43
+ * Present only when this customer is a company. Absent on an individual.
44
+ */
45
+ business?: PartnerBusinessDto;
46
+ };
47
+ export type BusinessDetailsDto = {
48
+ /**
49
+ * Registered name, exactly as the incorporation record has it. Checked against the register during KYB.
50
+ */
51
+ legalName: string;
52
+ /**
53
+ * Company registration number — the RC number in Nigeria. Unique per country of incorporation.
54
+ */
55
+ registrationNumber: string;
56
+ /**
57
+ * ISO 3166-1 alpha-2 country of incorporation. Decides which register the KYB check runs against, so it is not necessarily where the customer trades.
58
+ */
59
+ country: string;
60
+ /**
61
+ * Trading name where it differs. Display only, never matched.
62
+ */
63
+ tradingName?: string;
64
+ addressLine1?: string;
65
+ addressLine2?: string;
66
+ city?: string;
67
+ /**
68
+ * State or province.
69
+ */
70
+ subdivision?: string;
71
+ postalCode?: string;
72
+ website?: string;
24
73
  };
25
74
  export type RegisterCustomerDto = {
26
75
  firstName: string;
@@ -31,6 +80,10 @@ export type RegisterCustomerDto = {
31
80
  * ISO alpha-2 country code
32
81
  */
33
82
  country: string;
83
+ /**
84
+ * Supply this to register the customer as a business. Omit it and the customer is an individual, exactly as before.
85
+ */
86
+ business?: BusinessDetailsDto;
34
87
  };
35
88
  export type KycStatus = 'PENDING' | 'REVIEW' | 'APPROVED' | 'REJECTED';
36
89
  export type PartnerKycRecordDto = {
@@ -636,7 +689,13 @@ export type PartnerRampQuoteDto = {
636
689
  };
637
690
  export type GetQuoteDto = {
638
691
  amount: number;
692
+ /**
693
+ * On a sell, the stablecoin being sold; on a buy, the fiat being spent. Any stablecoin the service credits can be ramped wherever the exchange quotes the pair.
694
+ */
639
695
  sourceCurrency: string;
696
+ /**
697
+ * On a sell, the fiat received; on a buy, the stablecoin bought. Must be the customer's own local fiat on the fiat side.
698
+ */
640
699
  destinationCurrency: string;
641
700
  type: 'sell' | 'buy';
642
701
  /**
@@ -652,8 +711,18 @@ export type GetQuoteDto = {
652
711
  };
653
712
  export type PartnerBuyResultDto = {
654
713
  reference: string;
714
+ asset: 'USDT' | 'USDC' | 'CNGN';
655
715
  fiatCurrency: string;
656
716
  fiatSpent: number;
717
+ /**
718
+ * Units of `asset` now on the balance.
719
+ */
720
+ assetCredited: number;
721
+ /**
722
+ * Same number as `assetCredited`, kept for clients written when USDT was the only rampable asset. Read `assetCredited` with `asset`.
723
+ *
724
+ * @deprecated
725
+ */
657
726
  usdtCredited: number;
658
727
  };
659
728
  export type CustomerSellDto = {
@@ -674,32 +743,52 @@ export type PartnerNetworkDto = {
674
743
  evm: boolean;
675
744
  };
676
745
  export type PartnerRateDto = {
746
+ /**
747
+ * The stablecoin these rates price — echoes the ?asset asked for.
748
+ */
749
+ asset: 'USDT' | 'USDC' | 'CNGN';
677
750
  fiatCurrency: string;
678
751
  /**
679
- * Fiat paid per USDT when buying. All-in: spread applied, and buys carry no fees.
752
+ * Fiat paid per unit of `asset` when buying. All-in: spread applied, and buys carry no fees.
680
753
  */
681
754
  buyRate: number;
682
755
  /**
683
- * Fiat received per USDT when selling. All-in: spread applied, plus the fixed exchange fee when ?amount was given, so amount * sellRate is exactly what the customer receives. The withdrawal fee is separate; see GET .../withdraw/quote.
756
+ * Fiat received per unit of `asset` when selling. All-in: spread applied, plus the fixed exchange fee when ?amount was given, so amount * sellRate is exactly what the customer receives. The withdrawal fee is separate; see GET .../withdraw/quote.
684
757
  */
685
758
  sellRate: number;
686
759
  /**
687
- * USDT amount sellRate was priced for; null when ?amount was omitted, in which case the fixed exchange fee is not in sellRate.
760
+ * Amount of `asset` sellRate was priced for; null when ?amount was omitted, in which case the fixed exchange fee is not in sellRate.
688
761
  */
689
762
  amount: number | null;
690
763
  /**
691
- * Fixed sell-side exchange fee, USDT. In sellRate only when ?amount was given.
764
+ * Fixed sell-side exchange fee, in units of `asset`. In sellRate only when ?amount was given.
765
+ */
766
+ exchangeFeeAsset: number;
767
+ /**
768
+ * Same number as `exchangeFeeAsset`. See PartnerBuyResultDto.
769
+ *
770
+ * @deprecated
692
771
  */
693
772
  exchangeFeeUsdt: number;
694
773
  };
695
774
  export type PartnerSellResultDto = {
696
775
  reference: string;
697
- usdtSold: number;
776
+ asset: 'USDT' | 'USDC' | 'CNGN';
777
+ /**
778
+ * Units of `asset` sold.
779
+ */
780
+ assetSold: number;
698
781
  fiatCurrency: string;
699
782
  /**
700
783
  * Now on the customer's fiat balance; withdraw it with POST .../withdraw.
701
784
  */
702
785
  fiatCredited: number;
786
+ /**
787
+ * Same number as `assetSold`. See PartnerBuyResultDto.
788
+ *
789
+ * @deprecated
790
+ */
791
+ usdtSold: number;
703
792
  };
704
793
  export type PartnerBankDto = {
705
794
  code: string;
@@ -1533,9 +1622,13 @@ export type RampRateData = {
1533
1622
  */
1534
1623
  network?: 'ethereum' | 'polygon' | 'arbitrum' | 'base' | 'arc' | 'bsc' | 'optimism' | 'tron';
1535
1624
  /**
1536
- * USDT amount to price the sell rate for. When given, the fixed exchange fee is spread over it, so amount * sellRate is exactly what the customer receives. Omit for a per-unit rate that carries the spread only.
1625
+ * Amount of `asset` to price the sell rate for. When given, the fixed exchange fee is spread over it, so amount * sellRate is exactly what the customer receives. Omit for a per-unit rate that carries the spread only.
1537
1626
  */
1538
1627
  amount?: number;
1628
+ /**
1629
+ * Stablecoin to price against the customer's local fiat. Defaults to RAMP_DEFAULT_ASSET when omitted, so older clients keep working. The response echoes the asset it priced.
1630
+ */
1631
+ asset?: 'USDT' | 'USDC' | 'CNGN';
1539
1632
  };
1540
1633
  url: '/api/v1/partner/v1/customers/{customerId}/rate';
1541
1634
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dutchman-bridge",
3
- "version": "1.1.0",
3
+ "version": "1.3.0",
4
4
  "description": "TypeScript SDK for the Dutchman Bridge Partner API, generated from its OpenAPI specification.",
5
5
  "license": "UNLICENSED",
6
6
  "publishConfig": {
package/src/index.ts CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  export { client, type CreateClientConfig } from './client.gen';
4
4
  export { Bank, Countries, Customers, DutchmanBridge, Features, GlobalSend, Kyc, type Options, Profile, Ramp, Receiving, Send, Wallet, Webhook } from './sdk.gen';
5
- export type { AddAccountDto, BankAddAccountData, BankAddAccountResponse, BankAddAccountResponses, BankBanksData, BankBanksResponse, BankBanksResponses, BankDeleteAccountData, BankDeleteAccountResponse, BankDeleteAccountResponses, BankGetAccountsData, BankGetAccountsResponse, BankGetAccountsResponses, BankSetDefaultAccountData, BankSetDefaultAccountResponse, BankSetDefaultAccountResponses, BankVerifyAccountData, BankVerifyAccountResponse, BankVerifyAccountResponses, BlockchainNetwork, CheckSelfieDto, ClientOptions, CountriesListData, CountriesListResponse, CountriesListResponses, CustomerSellDto, CustomersFullData, CustomersFullResponse, CustomersFullResponses, CustomersGetData, CustomersGetResponse, CustomersGetResponses, CustomersRegisterData, CustomersRegisterResponse, CustomersRegisterResponses, FeaturesListData, FeaturesListResponse, FeaturesListResponses, FeatureStatus, FundingChargeStatus, GetQuoteDto, GlobalSendBeneficiaryDto, GlobalSendCorridorsData, GlobalSendCorridorsResponse, GlobalSendCorridorsResponses, GlobalSendInitiateData, GlobalSendInitiateResponse, GlobalSendInitiateResponses, GlobalSendQuoteData, GlobalSendQuoteDto, GlobalSendQuoteResponse, GlobalSendQuoteResponses, GlobalSendVerificationStatusData, GlobalSendVerificationStatusResponse, GlobalSendVerificationStatusResponses, InitiateFundingChargeDto, InitiateGlobalSendDto, KycDocumentData, KycDocumentResponse, KycDocumentResponses, KycReverificationData, KycReverificationResponse, KycReverificationResponses, KycSelfieCheckRouteData, KycSelfieCheckRouteResponse, KycSelfieCheckRouteResponses, KycStatus, KycStatusData, KycStatusResponse, KycStatusResponses, KycSummaryData, KycSummaryResponse, KycSummaryResponses, KycTier1Data, KycTier1Response, KycTier1Responses, KycTier2Data, KycTier2Response, KycTier2Responses, KycTier3Data, KycTier3Response, KycTier3Responses, LedgerEntryType, PartnerAccountVerificationDto, PartnerBalanceDto, PartnerBankAccountDto, PartnerBankDto, PartnerBuyResultDto, PartnerCorridorDto, PartnerCountryDto, PartnerCustomerDto, PartnerCustomerKycSnapshotDto, PartnerCustomerSnapshotDto, PartnerCustomerWalletSnapshotDto, PartnerDepositAddressDto, PartnerFeatureDto, PartnerFundingChargeDto, PartnerGlobalSendQuoteDto, PartnerGlobalSendResultDto, PartnerKycRecordDto, PartnerKycSubmissionDto, PartnerLedgerEntryDto, PartnerNetworkDto, PartnerRampQuoteDto, PartnerRateDto, PartnerReceivingAccountDto, PartnerReceivingActivityDto, PartnerReverificationRequestDto, PartnerSelfieCheckDto, PartnerSellResultDto, PartnerSendNetworkDto, PartnerSendQuoteDto, PartnerSendResultDto, PartnerTierStateDto, PartnerTierStatus, PartnerUploadedDocumentDto, PartnerVerificationInput, PartnerVerificationRecordDto, PartnerVerificationSummaryDto, PartnerVerificationTiersDto, PartnerVirtualAccountDto, PartnerWebhookConfigDto, PartnerWebhookDeliveryDetailDto, PartnerWebhookDeliveryDto, PartnerWebhookSecretDto, PartnerWebhookTestDto, PartnerWithdrawalBankAccountDto, PartnerWithdrawalDto, PartnerWithdrawalQuoteDto, ProfileChangePasswordData, ProfileChangePasswordResponse, ProfileChangePasswordResponses, ProfileDeleteAccountData, ProfileDeleteAccountResponse, ProfileDeleteAccountResponses, ProfileProfileData, ProfileProfileResponse, ProfileProfileResponses, ProfileUpdateProfileData, ProfileUpdateProfileResponse, ProfileUpdateProfileResponses, ProfileWithdrawalsData, ProfileWithdrawalsResponse, ProfileWithdrawalsResponses, QuoteSendDto, RampBuyData, RampBuyQuoteData, RampBuyQuoteResponse, RampBuyQuoteResponses, RampBuyResponse, RampBuyResponses, RampRateData, RampRateResponse, RampRateResponses, RampSellData, RampSellNetworksData, RampSellNetworksResponse, RampSellNetworksResponses, RampSellQuoteData, RampSellQuoteResponse, RampSellQuoteResponses, RampSellResponse, RampSellResponses, ReceivingActivityData, ReceivingActivityResponse, ReceivingActivityResponses, ReceivingCurrenciesData, ReceivingCurrenciesResponse, ReceivingCurrenciesResponses, ReceivingListData, ReceivingListResponse, ReceivingListResponses, ReceivingOpenData, ReceivingOpenResponse, ReceivingOpenResponses, ReceivingRefreshData, ReceivingRefreshResponse, ReceivingRefreshResponses, RegisterCustomerDto, ResetPassword, ReverificationItem, ReverificationStatus, SendDto, SendNetworksData, SendNetworksResponse, SendNetworksResponses, SendQuoteData, SendQuoteResponse, SendQuoteResponses, SendSubmitData, SendSubmitResponse, SendSubmitResponses, SetWebhookUrlDto, SubmitTier3Dto, Tier1KycDto, Tier2KycDto, UpdateCustomerProfileDto, VerifyAccountNumberInput, WalletAddressesData, WalletAddressesResponse, WalletAddressesResponses, WalletBalanceData, WalletBalanceResponse, WalletBalanceResponses, WalletFundingChargesData, WalletFundingChargesResponse, WalletFundingChargesResponses, WalletInitiateFundingChargeData, WalletInitiateFundingChargeResponse, WalletInitiateFundingChargeResponses, WalletStreamBalanceData, WalletStreamBalanceResponses, WalletTransactionsData, WalletTransactionsResponse, WalletTransactionsResponses, WalletVirtualAccountForData, WalletVirtualAccountForResponse, WalletVirtualAccountForResponses, WalletWithdrawalQuoteData, WalletWithdrawalQuoteResponse, WalletWithdrawalQuoteResponses, WalletWithdrawData, WalletWithdrawResponse, WalletWithdrawResponses, WebhookConfigData, WebhookConfigResponse, WebhookConfigResponses, WebhookDeliveriesData, WebhookDeliveriesResponse, WebhookDeliveriesResponses, WebhookDeliveryData, WebhookDeliveryResponse, WebhookDeliveryResponses, WebhookDeliveryStatus, WebhookReplayData, WebhookReplayResponse, WebhookReplayResponses, WebhookRotateSecretData, WebhookRotateSecretResponse, WebhookRotateSecretResponses, WebhookSetUrlData, WebhookSetUrlResponse, WebhookSetUrlResponses, WithdrawalStatus, WithdrawDto } from './types.gen';
5
+ export type { AddAccountDto, BankAddAccountData, BankAddAccountResponse, BankAddAccountResponses, BankBanksData, BankBanksResponse, BankBanksResponses, BankDeleteAccountData, BankDeleteAccountResponse, BankDeleteAccountResponses, BankGetAccountsData, BankGetAccountsResponse, BankGetAccountsResponses, BankSetDefaultAccountData, BankSetDefaultAccountResponse, BankSetDefaultAccountResponses, BankVerifyAccountData, BankVerifyAccountResponse, BankVerifyAccountResponses, BlockchainNetwork, BusinessDetailsDto, CheckSelfieDto, ClientOptions, CountriesListData, CountriesListResponse, CountriesListResponses, CustomerSellDto, CustomersFullData, CustomersFullResponse, CustomersFullResponses, CustomersGetData, CustomersGetResponse, CustomersGetResponses, CustomersRegisterData, CustomersRegisterResponse, CustomersRegisterResponses, FeaturesListData, FeaturesListResponse, FeaturesListResponses, FeatureStatus, FundingChargeStatus, GetQuoteDto, GlobalSendBeneficiaryDto, GlobalSendCorridorsData, GlobalSendCorridorsResponse, GlobalSendCorridorsResponses, GlobalSendInitiateData, GlobalSendInitiateResponse, GlobalSendInitiateResponses, GlobalSendQuoteData, GlobalSendQuoteDto, GlobalSendQuoteResponse, GlobalSendQuoteResponses, GlobalSendVerificationStatusData, GlobalSendVerificationStatusResponse, GlobalSendVerificationStatusResponses, InitiateFundingChargeDto, InitiateGlobalSendDto, KycDocumentData, KycDocumentResponse, KycDocumentResponses, KycReverificationData, KycReverificationResponse, KycReverificationResponses, KycSelfieCheckRouteData, KycSelfieCheckRouteResponse, KycSelfieCheckRouteResponses, KycStatus, KycStatusData, KycStatusResponse, KycStatusResponses, KycSummaryData, KycSummaryResponse, KycSummaryResponses, KycTier1Data, KycTier1Response, KycTier1Responses, KycTier2Data, KycTier2Response, KycTier2Responses, KycTier3Data, KycTier3Response, KycTier3Responses, LedgerEntryType, PartnerAccountVerificationDto, PartnerBalanceDto, PartnerBankAccountDto, PartnerBankDto, PartnerBusinessDto, PartnerBuyResultDto, PartnerCorridorDto, PartnerCountryDto, PartnerCustomerDto, PartnerCustomerKycSnapshotDto, PartnerCustomerSnapshotDto, PartnerCustomerWalletSnapshotDto, PartnerDepositAddressDto, PartnerFeatureDto, PartnerFundingChargeDto, PartnerGlobalSendQuoteDto, PartnerGlobalSendResultDto, PartnerKycRecordDto, PartnerKycSubmissionDto, PartnerLedgerEntryDto, PartnerNetworkDto, PartnerRampQuoteDto, PartnerRateDto, PartnerReceivingAccountDto, PartnerReceivingActivityDto, PartnerReverificationRequestDto, PartnerSelfieCheckDto, PartnerSellResultDto, PartnerSendNetworkDto, PartnerSendQuoteDto, PartnerSendResultDto, PartnerTierStateDto, PartnerTierStatus, PartnerUploadedDocumentDto, PartnerVerificationInput, PartnerVerificationRecordDto, PartnerVerificationSummaryDto, PartnerVerificationTiersDto, PartnerVirtualAccountDto, PartnerWebhookConfigDto, PartnerWebhookDeliveryDetailDto, PartnerWebhookDeliveryDto, PartnerWebhookSecretDto, PartnerWebhookTestDto, PartnerWithdrawalBankAccountDto, PartnerWithdrawalDto, PartnerWithdrawalQuoteDto, ProfileChangePasswordData, ProfileChangePasswordResponse, ProfileChangePasswordResponses, ProfileDeleteAccountData, ProfileDeleteAccountResponse, ProfileDeleteAccountResponses, ProfileProfileData, ProfileProfileResponse, ProfileProfileResponses, ProfileUpdateProfileData, ProfileUpdateProfileResponse, ProfileUpdateProfileResponses, ProfileWithdrawalsData, ProfileWithdrawalsResponse, ProfileWithdrawalsResponses, QuoteSendDto, RampBuyData, RampBuyQuoteData, RampBuyQuoteResponse, RampBuyQuoteResponses, RampBuyResponse, RampBuyResponses, RampRateData, RampRateResponse, RampRateResponses, RampSellData, RampSellNetworksData, RampSellNetworksResponse, RampSellNetworksResponses, RampSellQuoteData, RampSellQuoteResponse, RampSellQuoteResponses, RampSellResponse, RampSellResponses, ReceivingActivityData, ReceivingActivityResponse, ReceivingActivityResponses, ReceivingCurrenciesData, ReceivingCurrenciesResponse, ReceivingCurrenciesResponses, ReceivingListData, ReceivingListResponse, ReceivingListResponses, ReceivingOpenData, ReceivingOpenResponse, ReceivingOpenResponses, ReceivingRefreshData, ReceivingRefreshResponse, ReceivingRefreshResponses, RegisterCustomerDto, ResetPassword, ReverificationItem, ReverificationStatus, SendDto, SendNetworksData, SendNetworksResponse, SendNetworksResponses, SendQuoteData, SendQuoteResponse, SendQuoteResponses, SendSubmitData, SendSubmitResponse, SendSubmitResponses, SetWebhookUrlDto, SubmitTier3Dto, Tier1KycDto, Tier2KycDto, UpdateCustomerProfileDto, VerifyAccountNumberInput, WalletAddressesData, WalletAddressesResponse, WalletAddressesResponses, WalletBalanceData, WalletBalanceResponse, WalletBalanceResponses, WalletFundingChargesData, WalletFundingChargesResponse, WalletFundingChargesResponses, WalletInitiateFundingChargeData, WalletInitiateFundingChargeResponse, WalletInitiateFundingChargeResponses, WalletStreamBalanceData, WalletStreamBalanceResponses, WalletTransactionsData, WalletTransactionsResponse, WalletTransactionsResponses, WalletVirtualAccountForData, WalletVirtualAccountForResponse, WalletVirtualAccountForResponses, WalletWithdrawalQuoteData, WalletWithdrawalQuoteResponse, WalletWithdrawalQuoteResponses, WalletWithdrawData, WalletWithdrawResponse, WalletWithdrawResponses, WebhookConfigData, WebhookConfigResponse, WebhookConfigResponses, WebhookDeliveriesData, WebhookDeliveriesResponse, WebhookDeliveriesResponses, WebhookDeliveryData, WebhookDeliveryResponse, WebhookDeliveryResponses, WebhookDeliveryStatus, WebhookReplayData, WebhookReplayResponse, WebhookReplayResponses, WebhookRotateSecretData, WebhookRotateSecretResponse, WebhookRotateSecretResponses, WebhookSetUrlData, WebhookSetUrlResponse, WebhookSetUrlResponses, WithdrawalStatus, WithdrawDto } from './types.gen';
package/src/sdk.gen.ts CHANGED
@@ -491,7 +491,7 @@ export class GlobalSend extends HeyApiClient {
491
491
 
492
492
  export class Ramp extends HeyApiClient {
493
493
  /**
494
- * Price a buy (fiat -> USDT) against the customer's fiat balance
494
+ * Price a buy (fiat -> stablecoin) against the customer's fiat balance
495
495
  */
496
496
  public buyQuote<ThrowOnError extends boolean = false>(options: Options<RampBuyQuoteData, ThrowOnError>): RequestResult<RampBuyQuoteResponses, unknown, ThrowOnError> {
497
497
  return (options.client ?? this.client).post<RampBuyQuoteResponses, unknown, ThrowOnError>({
@@ -521,7 +521,7 @@ export class Ramp extends HeyApiClient {
521
521
  }
522
522
 
523
523
  /**
524
- * Networks the customer can deposit USDT on
524
+ * Networks the customer can deposit stablecoins on
525
525
  */
526
526
  public sellNetworks<ThrowOnError extends boolean = false>(options: Options<RampSellNetworksData, ThrowOnError>): RequestResult<RampSellNetworksResponses, unknown, ThrowOnError> {
527
527
  return (options.client ?? this.client).get<RampSellNetworksResponses, unknown, ThrowOnError>({
@@ -532,9 +532,9 @@ export class Ramp extends HeyApiClient {
532
532
  }
533
533
 
534
534
  /**
535
- * Live all-in USDT rates in the customer's local fiat, for previewing a conversion
535
+ * Live all-in stablecoin rates in the customer's local fiat, for previewing a conversion
536
536
  *
537
- * Rates include our spread and every fee, so amount * rate is what the customer pays or receives. Pass ?amount (USDT) to fold the fixed exchange fee into sellRate for that amount. Does not lock a rate -- checkout still goes through the quote routes.
537
+ * Rates include our spread and every fee, so amount * rate is what the customer pays or receives. Pass ?asset to price a specific stablecoin (default RAMP_DEFAULT_ASSET) and ?amount to fold the fixed exchange fee into sellRate for that amount. Does not lock a rate -- checkout still goes through the quote routes.
538
538
  */
539
539
  public rate<ThrowOnError extends boolean = false>(options: Options<RampRateData, ThrowOnError>): RequestResult<RampRateResponses, unknown, ThrowOnError> {
540
540
  return (options.client ?? this.client).get<RampRateResponses, unknown, ThrowOnError>({
@@ -545,7 +545,7 @@ export class Ramp extends HeyApiClient {
545
545
  }
546
546
 
547
547
  /**
548
- * Price a sell (USDT -> fiat) against the customer's USDT balance
548
+ * Price a sell (stablecoin -> fiat) against the customer's balance
549
549
  */
550
550
  public sellQuote<ThrowOnError extends boolean = false>(options: Options<RampSellQuoteData, ThrowOnError>): RequestResult<RampSellQuoteResponses, unknown, ThrowOnError> {
551
551
  return (options.client ?? this.client).post<RampSellQuoteResponses, unknown, ThrowOnError>({
@@ -560,7 +560,7 @@ export class Ramp extends HeyApiClient {
560
560
  }
561
561
 
562
562
  /**
563
- * Execute a sell from the customer's USDT balance
563
+ * Execute a sell from the customer's stablecoin balance
564
564
  */
565
565
  public sell<ThrowOnError extends boolean = false>(options: Options<RampSellData, ThrowOnError>): RequestResult<RampSellResponses, unknown, ThrowOnError> {
566
566
  return (options.client ?? this.client).post<RampSellResponses, unknown, ThrowOnError>({
package/src/types.gen.ts CHANGED
@@ -4,6 +4,25 @@ export type ClientOptions = {
4
4
  baseUrl: 'https://app.dutchmannetwork.online' | (string & {});
5
5
  };
6
6
 
7
+ export type PartnerBusinessDto = {
8
+ legalName: string;
9
+ tradingName: string | null;
10
+ registrationNumber: string;
11
+ /**
12
+ * Country of incorporation.
13
+ */
14
+ country: string;
15
+ /**
16
+ * KYB state, in the same words a person's KYC uses. REVIEW means a human is looking at it -- including when the register was simply unreachable, which is not the same as a refusal.
17
+ */
18
+ kybStatus: 'PENDING' | 'REVIEW' | 'APPROVED' | 'REJECTED';
19
+ kybCheckedAt: string | null;
20
+ /**
21
+ * Why it did not clear. Null once approved.
22
+ */
23
+ kybRejectionReason: string | null;
24
+ };
25
+
7
26
  export type PartnerCustomerDto = {
8
27
  id: string;
9
28
  firstName: string;
@@ -24,6 +43,38 @@ export type PartnerCustomerDto = {
24
43
  verifiedAt: string | null;
25
44
  createdAt: string;
26
45
  updatedAt: string;
46
+ /**
47
+ * Present only when this customer is a company. Absent on an individual.
48
+ */
49
+ business?: PartnerBusinessDto;
50
+ };
51
+
52
+ export type BusinessDetailsDto = {
53
+ /**
54
+ * Registered name, exactly as the incorporation record has it. Checked against the register during KYB.
55
+ */
56
+ legalName: string;
57
+ /**
58
+ * Company registration number — the RC number in Nigeria. Unique per country of incorporation.
59
+ */
60
+ registrationNumber: string;
61
+ /**
62
+ * ISO 3166-1 alpha-2 country of incorporation. Decides which register the KYB check runs against, so it is not necessarily where the customer trades.
63
+ */
64
+ country: string;
65
+ /**
66
+ * Trading name where it differs. Display only, never matched.
67
+ */
68
+ tradingName?: string;
69
+ addressLine1?: string;
70
+ addressLine2?: string;
71
+ city?: string;
72
+ /**
73
+ * State or province.
74
+ */
75
+ subdivision?: string;
76
+ postalCode?: string;
77
+ website?: string;
27
78
  };
28
79
 
29
80
  export type RegisterCustomerDto = {
@@ -35,6 +86,10 @@ export type RegisterCustomerDto = {
35
86
  * ISO alpha-2 country code
36
87
  */
37
88
  country: string;
89
+ /**
90
+ * Supply this to register the customer as a business. Omit it and the customer is an individual, exactly as before.
91
+ */
92
+ business?: BusinessDetailsDto;
38
93
  };
39
94
 
40
95
  export type KycStatus = 'PENDING' | 'REVIEW' | 'APPROVED' | 'REJECTED';
@@ -688,7 +743,13 @@ export type PartnerRampQuoteDto = {
688
743
 
689
744
  export type GetQuoteDto = {
690
745
  amount: number;
746
+ /**
747
+ * On a sell, the stablecoin being sold; on a buy, the fiat being spent. Any stablecoin the service credits can be ramped wherever the exchange quotes the pair.
748
+ */
691
749
  sourceCurrency: string;
750
+ /**
751
+ * On a sell, the fiat received; on a buy, the stablecoin bought. Must be the customer's own local fiat on the fiat side.
752
+ */
692
753
  destinationCurrency: string;
693
754
  type: 'sell' | 'buy';
694
755
  /**
@@ -705,8 +766,18 @@ export type GetQuoteDto = {
705
766
 
706
767
  export type PartnerBuyResultDto = {
707
768
  reference: string;
769
+ asset: 'USDT' | 'USDC' | 'CNGN';
708
770
  fiatCurrency: string;
709
771
  fiatSpent: number;
772
+ /**
773
+ * Units of `asset` now on the balance.
774
+ */
775
+ assetCredited: number;
776
+ /**
777
+ * Same number as `assetCredited`, kept for clients written when USDT was the only rampable asset. Read `assetCredited` with `asset`.
778
+ *
779
+ * @deprecated
780
+ */
710
781
  usdtCredited: number;
711
782
  };
712
783
 
@@ -730,33 +801,53 @@ export type PartnerNetworkDto = {
730
801
  };
731
802
 
732
803
  export type PartnerRateDto = {
804
+ /**
805
+ * The stablecoin these rates price — echoes the ?asset asked for.
806
+ */
807
+ asset: 'USDT' | 'USDC' | 'CNGN';
733
808
  fiatCurrency: string;
734
809
  /**
735
- * Fiat paid per USDT when buying. All-in: spread applied, and buys carry no fees.
810
+ * Fiat paid per unit of `asset` when buying. All-in: spread applied, and buys carry no fees.
736
811
  */
737
812
  buyRate: number;
738
813
  /**
739
- * Fiat received per USDT when selling. All-in: spread applied, plus the fixed exchange fee when ?amount was given, so amount * sellRate is exactly what the customer receives. The withdrawal fee is separate; see GET .../withdraw/quote.
814
+ * Fiat received per unit of `asset` when selling. All-in: spread applied, plus the fixed exchange fee when ?amount was given, so amount * sellRate is exactly what the customer receives. The withdrawal fee is separate; see GET .../withdraw/quote.
740
815
  */
741
816
  sellRate: number;
742
817
  /**
743
- * USDT amount sellRate was priced for; null when ?amount was omitted, in which case the fixed exchange fee is not in sellRate.
818
+ * Amount of `asset` sellRate was priced for; null when ?amount was omitted, in which case the fixed exchange fee is not in sellRate.
744
819
  */
745
820
  amount: number | null;
746
821
  /**
747
- * Fixed sell-side exchange fee, USDT. In sellRate only when ?amount was given.
822
+ * Fixed sell-side exchange fee, in units of `asset`. In sellRate only when ?amount was given.
823
+ */
824
+ exchangeFeeAsset: number;
825
+ /**
826
+ * Same number as `exchangeFeeAsset`. See PartnerBuyResultDto.
827
+ *
828
+ * @deprecated
748
829
  */
749
830
  exchangeFeeUsdt: number;
750
831
  };
751
832
 
752
833
  export type PartnerSellResultDto = {
753
834
  reference: string;
754
- usdtSold: number;
835
+ asset: 'USDT' | 'USDC' | 'CNGN';
836
+ /**
837
+ * Units of `asset` sold.
838
+ */
839
+ assetSold: number;
755
840
  fiatCurrency: string;
756
841
  /**
757
842
  * Now on the customer's fiat balance; withdraw it with POST .../withdraw.
758
843
  */
759
844
  fiatCredited: number;
845
+ /**
846
+ * Same number as `assetSold`. See PartnerBuyResultDto.
847
+ *
848
+ * @deprecated
849
+ */
850
+ usdtSold: number;
760
851
  };
761
852
 
762
853
  export type PartnerBankDto = {
@@ -1702,9 +1793,13 @@ export type RampRateData = {
1702
1793
  */
1703
1794
  network?: 'ethereum' | 'polygon' | 'arbitrum' | 'base' | 'arc' | 'bsc' | 'optimism' | 'tron';
1704
1795
  /**
1705
- * USDT amount to price the sell rate for. When given, the fixed exchange fee is spread over it, so amount * sellRate is exactly what the customer receives. Omit for a per-unit rate that carries the spread only.
1796
+ * Amount of `asset` to price the sell rate for. When given, the fixed exchange fee is spread over it, so amount * sellRate is exactly what the customer receives. Omit for a per-unit rate that carries the spread only.
1706
1797
  */
1707
1798
  amount?: number;
1799
+ /**
1800
+ * Stablecoin to price against the customer's local fiat. Defaults to RAMP_DEFAULT_ASSET when omitted, so older clients keep working. The response echoes the asset it priced.
1801
+ */
1802
+ asset?: 'USDT' | 'USDC' | 'CNGN';
1708
1803
  };
1709
1804
  url: '/api/v1/partner/v1/customers/{customerId}/rate';
1710
1805
  };