Olá eu preciso de um botão de compra que leve o cliente diretamente para o Checkout sem precisar passar para o carrinho alguém pode me ajudar?
top of page

EN

PT

A lista de desejos é a nova plataforma oficial para solicitação de novos recursos. Você pode votar, comentar e acompanhar o status dos recursos solicitados - Disponível apenas em inglês.
bottom of page
Olá Nathan! Para fazer isso existem alguns passos que podemos usar. Nessa solução usarei a api Wix-pay, que cria ordens de pagamento baseados em comandos ou cliques em botões. 1. Crie um Módulo no seu Back-end
Para entender mais sobre back-end, veja esse artigo
Após criar um módulo (Dei o nome dele de pay.jsw), abra-o e no console adicione o código.
import wixPay from 'wix-pay-backend'; import wixData from 'wix-data'; import wixStores from 'wix-stores-backend'; export async function createPaymentForProduct(productId) { let product = await wixData.get('Stores/Products', productId); return wixPay.createPayment( { amount: product.discountedPrice, items: [ { name: product.name, price: product.discountedPrice } ] } ); }
2. Adicione o botão a sua página de produto do Stores
A stores tem uma página padrão para produtos individual. Adicione um botão onde considerar adequado, ele servirá para criar a ordem de checkout, sem precisar de carrinho.
3. Adicione o código a sua página de produto do Stores
Agora configure um evento de onClick no seu console para que a ordem de pagamento seja criada.
import {createPaymentForProduct} from 'backend/pay'; import wixPay from 'wix-pay'; let product; $w.onReady(async function () { //TODO: write your page related code here... product = await $w('#productPage1').getProduct(); }); export async function ibotaoDeCompra_click(event) { //Add your code for this event here: let itemId = product._id; let payment = await createPaymentForProduct(itemId); await wixPay.startPayment(payment.id); }
Ao final execute os testes necessários e você estará pronto para ter o recurso no seu site Wix! Espero ter ajudado ;)