// Get Helcim payment plans
const HELCIM_API_BASE = 'https://api.helcim.com/v2'

export default defineEventHandler(async (event) => {
  try {
    await requireAdmin(event)
    const config = useRuntimeConfig(event)
    const helcimToken = config.helcimApiToken
    
    const response = await fetch(`${HELCIM_API_BASE}/payment-plans`, {
      method: 'GET',
      headers: {
        'accept': 'application/json',
        'api-token': helcimToken
      }
    })
    
    if (!response.ok) {
      console.error('Failed to fetch payment plans:', response.status, response.statusText)
      throw createError({
        statusCode: response.status,
        statusMessage: 'Failed to fetch payment plans'
      })
    }
    
    const plansData = await response.json()
    
    return {
      success: true,
      plans: plansData
    }
    
  } catch (error) {
    if (error.statusCode) throw error
    console.error('Error fetching Helcim payment plans:', error)
    throw createError({
      statusCode: 500,
      statusMessage: 'An unexpected error occurred'
    })
  }
})