Ribbentrop innledet forhandlinger om en handelsavtale med Sovjetunionen. Senere i august 1939 fortsatte Ribbentrop forhandlingene og undertegnet den tysk-sovjetiske ikke-angrepspakten, også kalt Molotov–Ribbentrop-pakten. Med denne pakten kunne de tyske regimet anta at den sovjetiske hæren ikke ville bli en motstander ved en tysk invasjon av Polen. I Sovjetunionen hadde det tidligere på sommeren 1939 vært misnøye med at forhandlingene skjedde via underordnete diplomater. Hitler bestemte derfor den 14. august at Ribbentrop personlig skulle sluttføre forhandlingene med Molotov og Stalin. Fra 18. august var Ribbentrop i beredskap for å reise med fly til Moskva. Hitler hadde i utgangspunktet planlagt invasjon av Polen 26. august og avtalen med Moskva måtte være på plass før. Stalin oppfattet trolig Hitlers hastverk. Den hemmelige delen av avtalen omhandlet delingen av Polen og Baltikum. Hitler ønsket å trekke demarkasjonslinjen midt i Latvia langs elven Daugava. Stalin ønsket å få kontroll over de gamle russiske flåtehavnene Liepaja og Ventspils, og foreslo Litauens nordgrense som skillelinje mellom Tysklands og Sovjetunionens interessesfære. Ribbentrop kontaktet Hitler mens forhandlingene i Moskva pågikk og fikk straks ja til å oppgi Kurzeme og Zemgale. Den hemmelige delen omfattet videre delingen av Polen i en sovjetisk og en tysk del (langs elvene Pissa, Nemunas, Wisła og San), samt sovjetisk kontroll over Bessarabia, Estland og Latvia og Finland som sovjetisk interessesfære. Litauen skulle i hovedsak falle i den tyske interessesfæren. Den hemmelig delen var basert på et sovjetisk utkast av 19. august.