I'm echoing Mirela here. Housetraining is very simple if you follow a few rules without exception:
- crate train the dog, and use it.
- bring the puppy out frequently to void.
- bring them to a specific area (preferably one where they've peed/pooped before) and don't play with them - make it different than a walk
- use the rule of "afters" - bring them out after they wake up; after a play session; after they eat; after they've been crated. Think of the times you need to use the bathroom.
- when they do go - the second they start to void, give them a very low key 'good pup' - keep it low key as you don't want to interrupt their pee/poop and have them stop and come for pets. When they finish the pee/poo, you can give them lavish praise and a treat. Giving them the low key cue marks the behaviour so they can relate the later big fuss to the right action.
- supervise them always until completely house-trained
- crate if you can't supervise until completely house-trained
- never ever punish an accident, even if you catch them right after. If you catch them IN THE ACT (just starting to pee/poo) do not correct them (you may instill in them the incorrect association that you don't want them to pee/poo). Make sharp noises, clap, say "AH AH AH!", whatever; not threatening, just very interrupting, and get them outside right away.
- every time you have an accident in the house, find a piece of newspaper, roll it up tight, and slap yourself on the wrist for not supervising.
Some dogs are a bit slower to pick up on it than others, but it's usually just getting what it is you want. ie that first pee/poop may take a while. If you're doing the above, once they happen to do the right thing once or twice, they usually do really well at it after that.