<script setup lang="ts">
import { useReevit } from '@reevit/vue';
const {
status,
paymentIntent,
error,
initialize,
selectMethod,
processPayment,
reset,
isLoading
} = useReevit({
config: {
publicKey: 'pfk_test_xxx.secret',
amount: 5000,
currency: 'GHS',
email: 'customer@example.com',
},
apiBaseUrl: 'http://localhost:8080',
onSuccess: (res) => console.log('Payment done!', res),
onError: (err) => console.error('Payment failed:', err),
});
</script>
<template>
<div>
<button v-if="status === 'idle'" @click="initialize">
Start Payment
</button>
<div v-if="status === 'ready'">
<h3>Select Payment Method</h3>
<button @click="selectMethod('card')">💳 Card</button>
<button @click="selectMethod('mobile_money')">📱 Mobile Money</button>
</div>
<div v-if="status === 'success'">
✅ Payment successful!
</div>
<div v-if="error" class="error">
{{ error.message }}
<button @click="reset">Try Again</button>
</div>
</div>
</template>