

AskHN: Freelancing – Questions from a temporary freelancer - mobini

I&#x27;m in need of 2k, so I&#x27;ve decided to do some short 1-2 day contracts. I&#x27;m not looking for long-term commitment. This is my first time doing freelancing, and I found some interested parties on craigslist.<p>I&#x27;ve read a few helpful HN threads on this topic, with lots of comments about writing up a contract that clearly stipulates payment and project scope. I&#x27;ll also hold copyright until last payment, and then I&#x27;ll transfer the copyright. I am unclear on a few things though:<p>- I would like to avoid Paypal as I have read stories about clients doing chargebacks. Bank wire seems better. What personal information do I have to reveal to the client (effectively a random internet person) to receive payment through a bank transfer? I&#x27;m afraid of scammers who are only interested in mining personal info. So far this person does not seem the type, but I&#x27;d like to mitigate the risk if there&#x27;s a way.<p>- One of the clients wants a web scraper to scrape some sites that have no api. The problem is he wants it to be &quot;reliable&quot;. As we all know, web scrappers can fail if the site has a redesign. How can I avoid a false chargeback&#x2F;dispute if the scraper is done and fails 2 weeks later because of a site change?<p>- For my own tax records(I&#x27;m in the US), how do I get my &#x27;pay stub&#x27; from the client? Would I just print out a record of my bank transfer statement? Similarly for paypal, would I print out the paypal transfer?
======
mtmail
\- on contracts there is the classic 'f*ck you pay me' video
[http://vimeo.com/22053820](http://vimeo.com/22053820)

\- on bank transfer it's just your name, bank name and bank account numbers.
An outsider can't get your address easily.

\- I don't like paypal for the same reason. If the transaction gets
investigated they lock the money for months.

\- will the scraper run on your systems or theirs? If it's yours then you
should charge monthly maintenance to cover any breaks or redesigns. Ideally
you deliver them software only and be done. It's a bad situation. All crawlers
I wrote broke at one point or another, e.g. running out of disc space or fail
to send emails.

\- tax office is interested in a proper invoice that lists your full address,
the clients full address, a date, a description of services. You can create a
simple PDF document. How and when the money transaction happened is secondary.
They might not even care if the client has a copy of the invoice.

------
davismwfl
mtmail already made the point on the monthly maintenance on the web scraper.
One more thing I'd do, as an addendum (or even separate) to the contract, I'd
have a one page written/signed document that points out web scrapers are
useful but fragile when sites change (give the reasons etc). That should help
keep you pretty safe.

As for payment, try not to take a credit card or paypal, get a physical check,
ACH or wire transfer. As for taxes, most places will require you to provide a
W9 which they will then use to report what they paid you to the IRS (although
sometimes when the fees are low they don't bother). In the end even if they
don't, just report it on your taxes as additional income and keep a copy of
your invoice and record of payment, including any fees or costs you incurred
on the project and to get paid. This way you can get your deductions but also
have proof.

~~~
mobini
I just read that giving out the bank account number may be dangerous as
well... [http://money.stackexchange.com/questions/15218/is-it-safe-
to...](http://money.stackexchange.com/questions/15218/is-it-safe-to-give-out-
ones-bank-account-number)

It seems like I have to either accept paypal and risk a chargeback, or I have
to provide my bank details which can be used for fraudulent withdrawals.

I think maybe I'll risk paypal then and keep detailed records of our email in
the event of a chargeback.

Unless I've misunderstood something?

~~~
davismwfl
It is true that technically people can process a payment or deposit against
any account where they have the Routing and Account number. However, the legal
consequences of doing an unauthorized withdrawal is quite stiff, not to
mention the audit trail is really easy to follow. And your own bank will
provide fraud protection if someone does this, limiting your liability to
basically nothing.

I generally have no issues giving a company our wire information or ACH
information. I'd much rather get the fraud protection from my bank. The
difference to me is this. My bank sides with me first until the other side
proves they were authorized, e.g. within 24 hours they put the money back in
my account and fight with the other side to prove they had my authorization
for the withdrawal. If you get a chargeback or Paypal refund, they both side
against you and make you prove you were entitled to receive the funds, and
even then many times won't care (Paypal).

------
saluki
Usually contracting with a client is pretty straight forward and simple . . .
a contract is a good idea . . . but for straight forward projects it can be as
simple as an email exchange outlining the scope and quote. 50% upfront is
pretty standard and then 50% upon completion then deliver the code/product
after the final payment (keep it on your hosting for reiview/final ok.) That
said best practice is to always setup a simple contract, I don't always though
and if the total is less than $1k I don't expect you're going to take them to
court to uphold their end of the contract especially overseas . . . typically
you can keep everyone happy and receive payments using an incremental
review/payment. 50% up front, then 50% at the end or maybe two 25% milestones.
If you get some payment up front and keep code on your server till final
payment you're pretty well covered. If they balk at 50% get 25% upfront . . .
or do a quick 25% milestone.

The goal is a combination to see they are paying . . . have them view the work
. . . see that they are happy and want to move forward. Then you just keep
moving milestone to milestone.

You might run in to issues on paypal occasionally but not often. If you have a
string of emails from the same email address they send payments from you can
usually submit that string of emails and paypal will dispute and win the
charge back. I understand your concern but paypal is simple and fast. Just
make sure to ask for an email indicating the project was completed
successfully and they are happy with the work if you're worried about it.

Wire transfers are a pain, you could setup a domain name/SSL and use stripe
for payments but they could always request a charge back. In the states most
clients are happy to just mail a check (make sure they clear before sending
the code over/going to far)

For the scraping app . . . note in the scope that at some point the website
being scraped will change and the scraper will have to be updated. Can you
setup a monthly fee to monitor that part of the app. Build in an automated
email if the scrape fails and you can fix it as part of your monthly fee
(setup via stripe or paypal (gasp!). Or have a maintenance fee already quoted
for making those updates each time. They should understand that the format of
a 3rd party site is out of your control/and their control and will require
some tweaks occasionally. Try for monthly, recurring revenue is always best.

For tax records just track your side business income and expenses. In the
states they are required to send you a 1099 for work totaling over $600 in a
year. See getting an EIN number below that you can use on your W-9 they need
to generate your 1099. You'll most likely file a schedule C or C-ez along with
your 1040. It's not real elaborate they only ask for totals. Just keep
invoices and wire/paypal/stripe records to verify your numbers if needed.

If you're worried about your address, get a UPS store address. To protect your
Social Security Number you can get an EIN number using your name as the sole
proprietorship name. This is useful for affil. programs or anything else that
generates revenue to minimize exposing your SSN.

When you do use a contract I usually note that the client can use the
delivered code as they see fit and that I retain the right to use and re-use
portions of the code provided on past, current and future projects. Most code
is modular and re-useable and every developer has modules they re-use.

Also add to your contract that you aren't responsible for lost revenue or
potential revenue resulting from delays or downtime. And that you will
guarantee the product/code is functional and you will resolve any defects with
in the first 90(or 180) days. (if their project is super time sensitive you
can provide them with a proposal that is 20x your quote if they want a
guaranteed delivery date that they feel will impact them significantly
financially if it's not met. Occasionally I've ran in to a client that thinks
they are losing $20k/week because their project is delayed.

Relax most clients are trust worthy and just want a well developed project
delivered on time and are happy to pay for that. There are bad apples out
there but not many. If you get a bad feeling about a potential client it's
usually wise to trust that and pass on the project.

Good luck in 2015.

~~~
mobini
Thanks. I think you might be right about the paypal thing. I've been reading
up on some articles. The general consensus seems to be that if you know the
person, it's probably OK to give away bank details (ie, landlord). However,
the people I'm talking with are random strangers off the internet, so their
intentions are more difficult to figure out.

I'm leaning towards paypal now. I think I can offset the risk of chargeback by
writing some built in locking and then releasing it after x days. Would that
be okay?

Maybe I'm just being too pessimistic.

