1

目前,我正在使用PayPal IPN處理帶有本地託管網站商店的移動應用程序的微支付(範圍爲1歐元至7歐元)。這些應用程序商店外銷售產生的金額不是很高,但它是爲我的客戶提供的服務。自2015年1月1日起,新法律根據每個當地歐洲國家的增值稅稅率計算增值稅計算和付款。支付與EU Vat處理小額付款的付款處理器

現在我正在尋找處理增值稅收費的付款處理器。我已經檢查過Digitalriver產品和Fastspring,但兩者都有最低的交易費用,這些費用大大降低了銷售價格。

是否有其他支付處理器的增值稅處理更適合小額支付?

問候,

+1

看看Taxamo。我幫助我遵守新法律。 – 2015-01-06 12:44:19

+0

感謝您的提示。我已經實施了我自己的解決方案,總結了每季度提交的所有國家。 我發現的所有支付處理器對於我的少量銷售和小額支付都太貴。 – Hyndrix 2015-01-06 17:00:33

回答

1

在情況下,它是幫助你或其他人,這裏是一些PHP代碼,你可以使用基於自己的IP地址來計算歐盟成員國的增值稅率,讓訪客

顯然,使用風險自負。增值稅稅率在發佈時是正確的,但可能會在未來發生變化。在爭議的情況下,立法需要兩個證據來證明正確的國家。你可以使用下面的代碼作爲一個證據,但你可能需要另一塊。

function getIPAddress() 
{ 
    $ret = ""; 
    if (isset($_SERVER['HTTP_CLIENT_IP'])) 
     $ret = $_SERVER['HTTP_CLIENT_IP']; 

    if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) 
     $ret = $_SERVER['HTTP_X_FORWARDED_FOR']; 
    else 
     $ret = $_SERVER['REMOTE_ADDR']; 
    return $ret; 
} 

function getVatRateFromIpCountryCode() 
{ 
    // Work out IP address and country code 
    $remote_addr = getIPAddress(); 
    $xml = simplexml_load_file("http://www.geoplugin.net/xml.gp?ip=".$remote_addr); // don't do more than 120 lookups in a minute or you'll get blacklisted for an hour 
    $countryCode = $xml->geoplugin_countryCode; 
    //$countryCode = "LU"; // test force contryCode 

    // see http://ec.europa.eu/taxation_customs/resources/documents/taxation/vat/how_vat_works/rates/vat_rates_en.pdf for current EU VAT rates 
    $vat_percentage = 0; 
    switch ($countryCode) 
    { 
    case "EU":  $vat_percentage = 20; break; // unknown EU country 
    case "BE":  $vat_percentage = 21; break; // Belgium 
    case "BG":  $vat_percentage = 20; break; // Bulgaria 
    case "CZ":  $vat_percentage = 21; break; // Czech Republic 
    case "DK":  $vat_percentage = 25; break; // Denmark 
    case "DE":  $vat_percentage = 19; break; // Germany 
    case "EE":  $vat_percentage = 20; break; // Estonia 
    case "EL": 
    case "GR":  $vat_percentage = 23; break; // Greece 
    case "ES":  $vat_percentage = 21; break; // Spain 
    case "FR":  $vat_percentage = 20; break; // France 
    case "HR":  $vat_percentage = 25; break; // Croatia 
    case "IE":  $vat_percentage = 23; break; // Ireland 
    case "IT":  $vat_percentage = 22; break; // Italy 
    case "CY":  $vat_percentage = 19; break; // Cyprus 
    case "LV":  $vat_percentage = 21; break; // Latvia 
    case "LT":  $vat_percentage = 21; break; // Lithuania 
    case "LU":  $vat_percentage = 15; break; // Luxembourg 
    case "HU":  $vat_percentage = 27; break; // Hungary 
    case "MT":  $vat_percentage = 18; break; // Malta 
    case "NL":  $vat_percentage = 21; break; // Netherlands 
    case "AT":  $vat_percentage = 20; break; // Austria 
    case "PL":  $vat_percentage = 23; break; // Poland 
    case "PT":  $vat_percentage = 23; break; // Portugal 
    case "RO":  $vat_percentage = 24; break; // Romania 
    case "SI":  $vat_percentage = 22; break; // Solvenia 
    case "SK":  $vat_percentage = 20; break; // Slovakia 
    case "FI":  $vat_percentage = 24; break; // Finland 
    case "SE":  $vat_percentage = 25; break; // Sweden 
    case "UK": 
    case "GB":  $vat_percentage = 20; break; // United Kingdom 
    default:  break; 
    } 
    //echo "countryCode = '$countryCode', vat_percentage = $vat_percentage<BR>"; // debugging 
    return $vat_percentage/100; 
}