Olá, tentei usar testando o próprio exemplo informado. Apresenta erro do amount do item, porém, está informado de acordo com o padrão. Alterei de 354.20 para 354.02 e continua o erro.
Obrigado
In [50]: pg.items = [{'amount': 354.02,
...: 'description': 'Produto 3',
...: 'id': '0003',
...: 'quantity': 2,
...: 'weight': 200}]
In [51]: response = pg.checkout()
In [52]: response.errors
Out[52]:
OrderedDict([(u'code', u'11029'),
(u'message',
u'Item amount invalid pattern: 354. Must fit the patern: \d+.\d{2}')])