Der Fehler mit fehlender AGB tritt also nur nach einer Rückkehr von der Bezahlung beim Server von iPayment auf. Womöglich ist sogar der Warenkorb dann leer?
Vermutlich stimmt die Domäne der Url nicht überein. Damit kann das Cookie nicht richtig zugeordnet werden.
Ggf. sollte das PHP Array $_REQUEST nach der Rückkehr vom Gateway debuggt werden.