XML 85 R41.htm IDEA: XBRL DOCUMENT v2.4.1.9
Financing Receivables (Details 2) (USD $)
In Millions, unless otherwise specified
3 Months Ended 12 Months Ended
Mar. 31, 2015
Dec. 31, 2014
Dec. 31, 2013
Financing Receivables      
Ending Balance $ 19,970ibm_FinancingReceivablesGross $ 22,332ibm_FinancingReceivablesGross  
Collectively evaluated for impairment 19,431us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment 21,821us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment  
Individually evaluated for impairment 539us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment 511us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment  
Allowance for Credit Losses      
Allowance for credit losses, beginning balance 561us-gaap_FinancingReceivableAllowanceForCreditLosses 365us-gaap_FinancingReceivableAllowanceForCreditLosses  
Write-offs (1)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs (24)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs  
Provision 54us-gaap_ProvisionForLoanLeaseAndOtherLosses 243us-gaap_ProvisionForLoanLeaseAndOtherLosses  
Other (19)ibm_FinancingReceivableAllowanceForCreditLossesOther (23)ibm_FinancingReceivableAllowanceForCreditLossesOther  
Allowance for credit losses, ending balance 595us-gaap_FinancingReceivableAllowanceForCreditLosses 561us-gaap_FinancingReceivableAllowanceForCreditLosses  
Collectively evaluated for impairment 80us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment 81us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment  
Individually evaluated for impairment 515us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1 480us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1  
Major Markets      
Financing Receivables      
Ending Balance 14,176ibm_FinancingReceivablesGross
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
15,751ibm_FinancingReceivablesGross
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Collectively evaluated for impairment 14,098us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
15,665us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Individually evaluated for impairment 78us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
86us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance 111us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
137us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Write-offs (1)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
(18)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Provision 5us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
3us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Other (8)ibm_FinancingReceivableAllowanceForCreditLossesOther
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
(12)ibm_FinancingReceivableAllowanceForCreditLossesOther
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Allowance for credit losses, ending balance 107us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
111us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Collectively evaluated for impairment 41us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
42us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Individually evaluated for impairment 66us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
69us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Growth Markets      
Financing Receivables      
Ending Balance 5,793ibm_FinancingReceivablesGross
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
6,581ibm_FinancingReceivablesGross
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Collectively evaluated for impairment 5,332us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
6,156us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Individually evaluated for impairment 461us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
425us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance 450us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
228us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Write-offs (1)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
(6)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Provision 49us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
240us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Other (11)ibm_FinancingReceivableAllowanceForCreditLossesOther
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
(11)ibm_FinancingReceivableAllowanceForCreditLossesOther
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Allowance for credit losses, ending balance 488us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
450us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Collectively evaluated for impairment 39us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
39us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Individually evaluated for impairment 449us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
411us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Lease receivables      
Financing Receivables      
Ending Balance 7,105ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
7,645ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance     123us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
Allowance for credit losses, ending balance 188us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
165us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
123us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
Lease receivables | Major Markets      
Financing Receivables      
Ending Balance 5,265ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
5,702ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance     42us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
Allowance for credit losses, ending balance 32us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
32us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
42us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
Lease receivables | Growth Markets      
Financing Receivables      
Ending Balance 1,840ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
1,943ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance     80us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
Allowance for credit losses, ending balance 156us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
133us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
80us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_LeaseReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
Loan receivables      
Financing Receivables      
Ending Balance 12,864ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
14,687ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance     242us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
Allowance for credit losses, ending balance 408us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
396us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
242us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
Loan receivables | Major Markets      
Financing Receivables      
Ending Balance 8,911ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
10,049ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance     95us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
Allowance for credit losses, ending balance 75us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
79us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
95us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_MajorMarketsMember
Loan receivables | Growth Markets      
Financing Receivables      
Ending Balance 3,953ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
4,639ibm_FinancingReceivablesGross
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
 
Allowance for Credit Losses      
Allowance for credit losses, beginning balance     147us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
Allowance for credit losses, ending balance $ 332us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
$ 317us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember
$ 147us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= ibm_ClientLoanReceivableMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= ibm_GrowthMarketsMember