@coin-voyage/paykit
Version:
Seamless crypto payments. Onboard users from any chain, any coin into your app with one click.
23 lines (22 loc) • 920 B
JavaScript
import { assert } from "@coin-voyage/shared/common";
import { fetchPaymentDetails } from "../lib/api/payment-details";
import { useBackendApi } from "../components/contexts/api";
export function usePayToAddress({ payOrder, setPayOrder, log }) {
const api = useBackendApi();
const payToAddress = async (currency) => {
assert(payOrder != undefined, "PayOrder is required");
const params = {
payorder_id: payOrder.id,
source_currency: currency,
};
const paymentDetails = await fetchPaymentDetails(api, params, payOrder);
log(`[PAY-TO-ADDRESS] Final Quote for Order: ${JSON.stringify(paymentDetails)}, params: ${JSON.stringify(params)}`);
setPayOrder({
...payOrder,
payment: paymentDetails.data,
status: paymentDetails.status,
});
return paymentDetails;
};
return { payToAddress };
}