In a nutshell, I've been doing freelance iOS development for a client on an ongoing basis since 2013. Originally my main contact with the business was, let's say, Person A. Recently the client has brought on a new person to manage the project, let's call them Person B. Person B hasn't replaced Person A (as in, Person A is still with the business), rather has just supplanted Person A's role as primary point of contact on the project.

The established pattern of work, with Person A, was that I'd quote the cost of a round of development, they'd approve it, and then when I was done I would deliver application binaries together with an invoice for the work. After the invoice was paid, I would refresh the client's internal Git repository with a copy of the application source-code. That worked well and as far as I'm aware kept everybody happy.

However, recently I submitted my binaries and invoice for the latest bundle of work, and then was informed by Person B that I'd not receive payment until I also provided the source-code. I responded that as a matter of policy I don't do that, and I've not heard anything back from Person B since then, nor received any payment. It's been about a week since I've heard anything from them now.

Some other potentially relevant points:

  • The work I'm invoicing for is almost entirely work that Person A approved.
  • Person B did not mention their desire to receive source-code in advance nor did I (or would I) agree to such a thing, and in fact their process tends to treat independent contractors more like internal developers; they simply create tickets in Jira and then expect people to work on them without further discussion.
  • In 2015, when the client was setting up their internal Git repository, I explicitly stated that I would not submit any code into it prior to receiving payment, and there were no objections at the time.
  • I've not had any issues with this client in terms of non-payment or demands that I do things that I never agreed to do as condition of payment in the past. It has, until recently, been an amicable and productive relationship.
  • I'm confused as to why I'm getting the silent treatment from Person B.
  • The binaries I provide prior to invoicing are always fully functional and production ready. I do not prevent the client from immediately deploying them to end-users.
  • The project is generally fairly informal; there's no "official" contract and all work is planned, quoted, and approved by e-mail.
  • I'm in Australia, where written promises exchanged by e-mail do count legally as civil contracts.

So I'm somewhat at a loss with respect to where I go from here.

Do I give them the source code, when I never agreed to do such a thing, and when I'm pretty sure that doing so is highly unprofessional if not basically crazy?

Do I stand my ground, and if so, how do I get past the impasse with Person B seemingly freezing me out?

What I have at the moment is a draft e-mail to Person A (with Person B CC'ed), which reads like:

Hi Person A, are you able to assist with this? Person B and I appear to be at an impasse.

I value our professional partnership and the opportunity to work on this project, however I'm unsure from where, when, or why this expectation of receiving source-code prior to payment has materialized. As an independent contractor, I do not transfer ownership of the source code I develop on behalf of Busisness Name (or any other client) until the work that's gone into it has been paid in full. This is a matter of policy, and something which I made clear in 2015 to Project Contact when he was the main point of contact for this project. It's never been an issue before.

As I've provided binaries which demonstrate that the functionality covered in the invoice sent on 11 November 2016 has been implemented, and as (to the best of my knowledge) those binaries have been deployed to testers and/or end users, I would appreciate it if that invoice would now be paid.

Or if there are any technical faults which you've identified in the work submitted, please advise and I'll correct them as quickly as possible. In the absence of any such advice, however, I can only consider the work completed and the invoice payable. I'll happily refresh the git repository with the latest sources upon receipt of payment, but unfortunately under no circumstance can I do so beforehand.


The plan is to send that on Monday if the situation doesn't change before then. Is that an appropriate and reasonable approach?

  • No clue where you or the managers are located.. but in the US.. this is a holiday week. Especially Wed - Fri. So..... Also.... any answers to this would be pretty much opinion-based and not a great fit for Stack Exchange sites. In my opinion... stand your ground. If you've never provided code before... there's no reason to start now. If you get ripped off (heaven forbid) at least you'll just be losing your time, not your time and the code.
    – Scott
    Commented Nov 25, 2016 at 5:22
  • "I'm in Australia" - managers are too. Not holiday time here. Though we still have Black Friday for some reason. I think the objectively answerable questions here are 'Is it or is it not standard practice to provide source-code prior to payment when freelancing?' and 'How does one deal with a non-paying client in a way that preferably doesn't lose them as a client?'
    – aroth
    Commented Nov 25, 2016 at 5:59
  • Frankly, I'm surprised you got answers and not the flag. Commented Nov 26, 2016 at 13:56
  • 1
    Your draft email looks good. It's professional and to the point. I would not hesitate to copy Person B, too, so he's fully aware. That he is ignoring does not bode well for your future at the company, though, as long a Person B is in the picture.
    – donjuedo
    Commented Nov 28, 2016 at 11:51

5 Answers 5


IANAL, nor any form of professional regarding law, let alone Australian law.

However, from what I've found from a quick google of Australian copyright law, it seems to conform with most copyright laws throughout the US and EU. Therefore I can only assume that transfer of ownership works similarly.

With this assumption, you still seem to be the owner of those binaries. So if the worst comes, you should be able to obtain compensation for the work from a small claims court (Whether that is worth it or not is entirely your decision).

As mentioned by cdkMoose in the comments, see a lawyer before considering action. Also, whilst the independence of each contractor's work seems to keep the situation from becoming complicated, it's worth mentioning that a situation with multiple contractors could complicate the situation, this would further warrant the need for a legal professional to keep you in the clear when dealing with the situation.

Though once again i'm not a lawyer or law professional and therefore the advice above should be taken with a grain of salt.

Regarding current affairs, I wouldn't hesitate in sending an email to Person A regarding the matter as Person B has already made his intentions clear and it is unlikely you'll get anywhere swiftly on negotiations with him. Though I would advise toning down your email rather than a passive aggressive jab at Person B as this is unlikely to go far. Instead raise the issue as needed

Hi Person A,

As to my knowledge there is still an outstanding invoice regarding Work, If there are any issues regarding payment, please keep me informed so that we can come to a compromise and get this issue resolved as soon as possible.

The invoice has been discussed with Person B, however there has been no progression regarding payment. I will be happy to provide the source code as soon as payment has been made, as per our usual agreement.

Kind Regards,

This is a fairly poor draft but could easily be improved to fit the situation, and I feel it points out the key parts without so obviously taking a stab at person B.

Whilst you may want to bring Person B to attention and take a good stab at him, remaining professional will allow you to be quite smug. If the situation goes your way, then he will likely feel belittled by Person A's payment and dismissal of Person B's demands; If not, then do not provide the source code until payment has been made, as at the moment you are in the favourable position. You hold the source code, as well as copyright ownership on the unpaid binaries they possess (especially if it's deployed to users and making them money).

as a quick reminder: I'm not a lawyer or legal professional and I urge you to take any legal advice here with a grain of salt as it can be difficult enough to keep up with legislation and laws regarding my own country, let alone Australia's law.

  • 1
    If OP is not the only developer, note the reference to independent contractors(plural) and "people" as opposed to "me" in the second bullet, then OP may not have copyright ownership due to the "contribution to a collective work" provisions in US copyright code for commissioned works(assuming Australian law simialr to US). Before invoking copyright, OP should consult a lawyer. OP probably better off citing past precedent and not copyright
    – cdkMoose
    Commented Nov 25, 2016 at 19:22
  • @cdkMoose - To clarify, there are other contractors, however each works on their own codebase. Specifically, there's a webserver, a mobile app, and an internal fileserver. I write all the mobile app code, and another contractor writes all the webserver code, and so on. Each component uses its own source tree and repository.
    – aroth
    Commented Nov 25, 2016 at 23:46
  • @cdkMoose: it will be great to update your initial post with your clarification as cited above, here. Commented Nov 26, 2016 at 6:01
  • @cdkMoose - I'll edit the question to ensure consideration of other contractors and legal standing is taken into account and is a valid shout. However after aroth's comment I feel in this specific case, the point regarding multiple contractors doesn't quite affect the situation significantly enough, as each contractor's work is kept independent.
    – lewis
    Commented Nov 28, 2016 at 12:03
  • IANAL, but if all of those codebases are designed and built to work together, I could still see the company arguing these are a collective work. If if comes down to this issue, best advice is to get your own lawyer.
    – cdkMoose
    Commented Nov 28, 2016 at 14:29

The single worst mistake I ever made as a contractor was agreeing to provide source code before payment was made.

Don't do it.

This doesn't pass the "smell test" at all.


Simple down to earth advice: unless you have a contract or document that explicitly includes the requirement to supply the source code before payment, I think you are right not to change the existing arrangement.

I would not go behind person B's back though, that might escalate. I'd communicate with person B and explain the situation and the way of working and include person A in the email. And keep the email simple. Just a paragraph indicating the previous way of working, the fact that payment hasn't arrived and that you would like to proceed as before.

Also, not sure if you already did this, don't underestimate the might of a simple meeting or phone call. Not everything needs to be done via email and in my experience I have often felt that I was in an impasse with someone only to find out that some face time or direct communication via telephone was all that was required.


I'm not familiar with Australia's laws, nor am I a lawyer. But here's what I'd do. Stick to your guns - do not send source code!

First, take into account any payment terms that apply to the invoice. What are your payment terms? (I hope you have SOMETHING established, in writing!!!) If you don't have specific payment terms, then you can probably establish them implicitly - i.e. if you usually get paid with ten days, then you could probably infer a Net 10 payment term.

Second, when the payment is past-due per terms, send a written demand for immediate payment. This has to be sent by some means that is trackable. Here in the States, we have private mail carriers (Fedex, UPS) as well as the Post Office and all can provide legally-admissible proofs of delivery for documents. You could also use a registered e-mail service (here, we have RPost). Escalate your demand, and send it to someone above your client's troublemaker.

Third, if that's doesn't work within an amount of time acceptable to you, look toward the courts. Is it a "small claim"? (Here, small claims is a shortened process for amounts usually $5000 USD or less, and no attorney is required or permitted; I'm not sure if such a venue is available to you). Or will you need an attorney? Start digging in on answering this question for yourself NOW.

At this stage, documenting everything is very important for a successful outcome.


I would simply write an email to Person B explaining how you and Person A did business before, detail how the work flow process worked before and how it can be beneficial now.

Ask the right questions, it could be the way his previous employment had him do things and he may not know any better.

i.e " I have never shared my source code prior to payment for this reason, is there any concern I can address now for you?"

I like your letter idea you have in your question however I would not address to Person A I would address to Person B and cc Person A.

Also shorter is better, if Person B is upset or ignoring you a long winded email will get over looked or moved to a later category.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.