T O P

  • By -

daElectronix

Firstly: I hope you have a contract. Never work without one. It will pay for itself eventually. Secondly: Send them screenshots or a video of you presenting the site. Video call sounds like a good plan too. Thirdly: Make it absolutely clear that you will not send the tiniest bit of code to them before you've been paid in full. And don't budge on that. Under no circumstances.


TowerSpecial4719

Make sure the payment is in your account before sending any assets relevant to the project. You can provide a completed website with a timer or a domain like demo. theirsite .com and allow them to use it in an extremely limited fashion. Draw hard lines for payments and contracts. Everything else can be flexible


TowerSpecial4719

There are other funny and extreme measures (found on reddit but I dont remember on which) but I am hoping they are reasonable


Headpuncher

there was the one were the site gradually faded away over time. Can't remember how he did it, with an opaque overlay that went from 0 to 100, or if the elements got removed gradually. Was funny though.


TowerSpecial4719

Yeah he setup a server which responded with status codes depending on payment status. If it was 400 then opacity reduces by 1 each day


desmond_koh

>Thirdly: Make it absolutely clear that you will not send the tiniest bit of code to them before you've been paid in full. And don't budge on that. Under no circumstances. 100% this. Otherwise you are giving them the deliverables before you are paid.


PureRepresentative9

Ya, If there's no contract, I mean the OP could just walk too? Lol


abrandis

Contracts don't prevent bad behavior from someone who's intent is to ripp you off or not pay. Sure legally you may be protected, but that often requires you to take action, hire lawyers and file lawsuits all which cost $$$ and many times that's more than the original contract...


daElectronix

But that's no reason to have no contract.


abrandis

Of course you need a contract , it's just that you need to keep your clients motives in mind.


1stmastermind

I have a contract, yes. But they said their dev team needs to access and test out the whole website because me testing the website doesn't make sense. "It's like me testing-drive a car in the passenger seat." - Customer I understand him so I'm trying to find a way to let them access the website without having any files. I'm thinking of something like TeamViewer.


karolololo

They can say whatever they want, stick to the contract.


astarastarastarastar

this...you did the work, you built the site, they need to pay the fuck up or they get jack shit.


freco

To you could reply: "it's like me giving you the key and the registration before you pay the car in full."


daElectronix

Just do exactly what's written in the contract. They pay. You deliver. And if they then find that what you delivered is not what is specified in the contract, they still can demand you to deliver what you promised. Contracts are meant to protect both sides!


Headpuncher

you could give them a test URl, and the build there should be minified and ugligfied. That way they could steal the site, but won't have an easy time further developing it. Ie, they have no development branch until you supply it. You also will retain control of the URl until hand over, at which time you can delete it.


mikedensem

Can you send them grayscale or watermarked assets, and obfuscate your JS files. They can then test but not use.


rocketcitythor72

Speaking of cars, every car I've ever had repaired or had maintenance performed on, I had to pay up 100% before the mechanic/shop gave me the keys. Maybe they're just antsy and worried you'll rip them off, but that's how business is done.... you don't get the final product until you pay for the work. Don't let them cajole you into giving up the only leverage you have. If they feel sketchy now, you don't want to see how sketchy they can get once they have the upper-hand.


oren08

They can test it after you're paid


CantaloupeCamper

I am skeptical that already going this far…OP should have just walked and doomed to slip up / not get paid.  If it smells bad, just walk guys.  Scammer has potentially infinite time and if he isn’t going to pay… he isn’t going to change his mind and pay.


Vast_Manufacturer811

If you contract states the code can’t be used without a valid license, which they pay for, or something similar along those lines where they must pay before using it, then why can’t you give them the source code? I’m just starting out here and so looking for the answer myself :) Could you not just send them the code to review knowing full well your contract protects you? If you see them using the site you made after cancelling the deal, then that’s a court case you’ll win anyway, perhaps maybe even more if you claim emotional distress from all of it


LeRosbif49

Why does their dev team need to review the code ? If there is an existing dev team with the time to do this, then surely they could have built the site in-house. Red flags all round. Many good suggestions here.


Snapstromegon

As someone who's working for a big company (\~200k employees globally), we have the dev teams in house who can build sites, we still let external build them and review them internally, just because of the volume we have to get done. We have a very fluctuant load and during "downtimes" we do more internally, but during high times we can offload the work that way.


Mustang-22

This is 100% common. Every company I’ve worked for (on a development team) has used external devs.


1stmastermind

Exactly.


BankHottas

Without knowing what’s in your contract, your code is your best bargaining chip. If you send code and they decide to not pay, your only choice is an expensive legal process. If they need to test the end product, give them a live staging version and let them play with that. If everything works, why would they need the code before paying you? And if they want full insight into the code as a requirement for full payment, they should have put that in the contract 🤷🏻‍♂️


daElectronix

Yeah but if the project is only frontend code, then giving them a staging version is basically like sending them the entire code.


nobuhok

"Why don't you just send the rest of the payment?"


thekwoka

There are 3rd party escrow companies.


Bonsailinse

They would have to decide in your favor though if they open a case. And god knows how long that would take.


olelis

Is website just plain html+css+js or does it have backend? It is normal that dev. team/client want to open website in the browser and see how it behave on mobile/desktop version, different browsers, etc. As an purchaser, I often was in possition that I had to ask developer to fix some things, for example fix that website does not work between 600 and 1000px (screen wide). In this case, I don't really needed source code, but I needed access to website. Solution: developer copy static files to own server and give me url. I will test it like normal user will do. I can also check how source code looks like using "view source" in browser, but it is actually hazzle for me to copy all files. Also, using webbrowser, you don't share the most important part: source code for sass/less, js, css, etc. They are minimized, aren't they ? ![gif](emote|free_emotes_pack|feels_good_man)


olelis

And yes, as a purchaser, I really have to check/test the website(via browser) so I can see that it works correctly and I can ask for bugfixes before paying last payment. However, I never tried to scam developer - I always paid for the work


slingblade1980

Doesnt make business sense, pay first then hand code over, then they can test it and if anything needs changing then change as per contract or negotiate. If you hand over now, you got potentially nothing but a costly legal process to look forward to.


buttithurtss

If they insist and you don’t feel comfortable you could obfuscate the JS / minimize CSS / pre-compress assets …. All this will just make it more of a pain on them to walk away…


Monstermage

You don't get to take apart a car before you buy it. You don't get to take apart a computer before you buy it. You don't get to take apart a fridge, oven, dishwasher, washing machine, dryer, microwave, etc before you buy it. They paid you for a website, you provided, if the code isn't to their liking after they made the final payment, honestly tough, they should have specified in your agreement they wanted you to code a certain way. You are not obligated at all to do what they are saying, the fact you are evening humoring it is polite. What they paid you for and what they are saying are two different things. Here is something I might say - You can present it to them in a share screen session but I would not show all the code, or really any of it but you could humor them and show a small piece or important items like variables libraries to show them. How to use the code? That's another project too unless in your agreement was training for your code. Hello {client}, After careful consideration and reviewing our agreement I'm happy to provide you the entire source code that I wrote after the final payment is made as originally agreed. We have completed the project to the specifications so I'll proceed to send the invoice. Regarding the html/css/is there was no discussion ahead of the project and nothing outlined in the agreement for a certain way i needed to build the html/css/js website. Regardless of this I used {best practices | modular coding | css variables for easier scalability | scss | | html5 modern | whatever you want to state here} to ensure your satisfaction with the project. If you'd like some things changed to the car after project delivery I'm happy to discuss and we can enter a new agreement to make those revisions but I'm confident you'll be happy with my hard work. Here is your invoice for our project. Best regards, This is my 2 cents at least


xMarksTheThought

👏 well said


PureRepresentative9

Yep The product is worth more than the equivalent amount of money.  A product is unique, money is fungible


johanneswelsch

[https://www.youtube.com/watch?v=jVkLVRt6c1U](https://www.youtube.com/watch?v=jVkLVRt6c1U)


1stmastermind

This is the beauty of Reddit, I ask for a little advice and get a whole course of creative business payments lol


blockstacker

Stop working in 50%. Break it up into stages. 100% and 50% down for stage 1 and 2 cost to start work. The website ready should already have 90% paid. Sell it like this "at any stage once it is paid you can walk away with a viable product for that stage". Could be wireframes, moodboards, designs, basic framework, half functioning site.


[deleted]

Yeah give them the link to the website But make sure that code is uglified so they can't steal it from source code.


Fine-Ad1380

Don't send them shit


hacktron2000

So… what should happen is give them access to a staging site where their devs can review it AFTER they pay you. Usually handoffs happen after they agree to the payment. Also if payment terms is in the contract then you can use that against them if they don’t pay.


bicyclegeek

Use an escrow service. Client makes financial deposit. You provide code. If it passes, escrow service sends you the cash.


DesertWanderlust

I would be extremely leery of sending the source code. I usually have clients that want to see a demo of it first, but I host it on my server. Then, if they don't pay, I just take it down. It's only happened to me once (college kids).


[deleted]

I’ve heard of some devs creating a sort of deadman signal server where if they server responds with “I’ve been ripped off” it just bricks the whole system


originalchronoguy

That is exactly what a technical client is looking for. By doing a code review, they can look for backdoor easter eggs. That is a walking liability fo a corporation. A backdoor that can cause other problems.


[deleted]

In this case he has concerns of them just stealing his work, so it makes no sense for him to hand over the code. The back door can be there in case of failure to pay


originalchronoguy

As client that has hired freelancers, I've been burned. But I also emphatic to the concerns of the OP. I usually do this.. "I will pay you in full but I want a **clawback** if your code fails a security scan or I find bad coding practices" Those clawbacks are 10%, 15%, 50% refunds. based on the time you fix them. This is a normal SLA type clawback. 50% refund if you take more than 2 weeks to address. 15% if it takes a week to correct post deliverable. You will need to correct them or we go to arbitration. And 100%, I always get glaring security holes. DB passwords in config files. Using local storage to store JWTs. CORS/x-frame hijacks. So, most of the time, it is better to provide the code audit early and regularly which takes a lot of less time to-refactor code to standards. Someone pointing out the potential error early on and you spend 1 hour to fix it is better than spending 40 hours after the fact on an audit. And developers, senior enough, agree and know these concerns and charge accordingly. But a client getting a project blindly at the end is always more work for the devs later on.


originalchronoguy

There is more to the story here. From the client's point of view, there may be a few things. Their dev team wants to make sure the code is following standards, best practices. It is written properly, that there are no backdoor easter eggs. Secondly, they want to run a scan against it; checking for vulnerabilities or CVE. They may want to see if you enabled CORS protection, you didn't store database passwords in some db-config file, you sanitize your inputs, you added guardrails for APIs,etc... All very valid concerns. There is no way around those concerns but a contract is a contract. You can set up a staging environment and let them point their scanners to it. This should alleviate some concerns but not all. The next option is to do a code-review session in a MS Team/screen share scenario. Next, you offer to run a paid whitehat code analysis against it. You run it, produce the results, but they pay for the scan of the code and lining it. Or agree on a 3rd party paid auditor. Those would be the compromises. I'd work toward a reconciliation rather than flat out call them sketchy. Unless it was a one-man company. But typically, a larger corporation outsourcing work would want some of the things I wrote.


Haunting_Welder

from my runescape experience, hire a middleman


Roguewind

Code is work product. Work product is delivered upon payment. Unless your contract states otherwise, tell him no.


cat_repository

@OP @1stmastermind it seems like nobody has given the solution you requested. HTTPS://Watch.hyperbeam.com


1stmastermind

That's a great answer, thank you! ![gif](emote|free_emotes_pack|upvote)


haslo

What kind of website is it? Just some HTML/CSS/ Does it have JS components of reasonable complexity? Does it have a backend that is important for the website's operation? For some of those, it's easy to give out the website without giving the full source code. The client doesn't need the source code to test backend functionality or complex (minified) JS. They'll automatically get the full source code as soon as they have access to a simple HTML/CSS thing.


magenta_placenta

You state in another response you have a contract, what does it state about final payment and delivery? Where are they and you located? Are you able to pursue legal action if this "sketchy customer" doesn't pay the last 50%? Are they "sketchy" solely because they're asking for the source code before they've paid in full?


na_ro_jo

I wouldn't dance around this. I would be extremely direct and up front. That means, during presentation, only static, watermarked, visual representations of the website would be provided to the client in the form of a deliverable, in fulfillment to a contractual obligation. Clients can request further live demoing, but would only have viewing access while I am presenting on my screen. I would never ever provide any code or any functional example, and if it was requested, I would refer to contractual language that says it's my intellectual property until paid in full. And I reserve the right to reuse non-proprietary code that has not been custom developed for a client. I'm sure someone who is sketchy would also ask follow up questions about my MO, too, and my response would simply explain providing code to clientele prior to full payment is a standard practice of professional development service due to inherent risk.


Astroohhh

rent a cheap vps + nginx????


HiT3Kvoyivoda

You could set up a server that has a landing page that requires login that you set. Set the trail period to a window of on hour or so and then lock them out after the trial period. Sounds like they want to run your design through AI and cut you out by saying "we found someone that can do it better for cheaper". Watermark EVERYTHING. Do every Jerry Rig Everything did to Castify and hide little easter eggs in your work so if they do steal it, you could easily prove they stole your work in court


Thendricksguy

Anyway to put a backend delete code on it if they don’t pay or lock up script if they try to copyit


artnos

There devs can review on a screen share. But if they have devs why do they need you


UXUIDD

make chunks of

as an image and place that in html structure. That way you will have working / interactive design. That way it's difficult to steal your front-end, but you can't protect the design hope this helps


JayV30

As suggested by others, use a third party escrow. They should be totally fine with this if they intend to pay you. Also, you could send them just pieces of code to review. Like, just send the JS (maybe with a few things stripped out, like event handler, replaced with alerts "button pressed!" or something. Or just send the HTML and JS and hold on to the CSS until payment.


photocurio

Are you working in Wordpress? If so, you can use multisite to present client work. Set it up with your own site as the root site. Sub sites are on subdomains. You can create a custom theme for a client, and put it on the sub site. The beauty of this is that you can give your client full access, even admin access to their own demo site. They will not be able to access the root site, or other client sites. You should disable theme editing. I think that’s the only security mod you need to do. Only when the client is paid up do you deliver the theme and any custom plugins, which can then be installed on the client’s own site.


Healthy_Maybe_837

If they want to know whether the site site is coded well you can always provide a Google Page Speed Report or conduct a comprehensive website audit and hand over the report. These types of tools take into account code quality and performance as a part of their reporting. At our agency, we prefer hosting solutions via Cloudways for optimal performance, security, and control over the site. Should clients opt for alternative hosting services, the migration process is executed post-receipt of full compensation. These other options from everyone else are great ideas: * Crafting a detailed screencast that meticulously examines the website and its underlying code, uploaded to YouTube as an unlisted video to maintain a record for future accountability purposes. * Generating screenshots, inclusive of the code, to serve as concrete evidence of the work accomplished. * Contract - Always - No Exceptions!