@@ -665,4 +665,30 @@ public void TestSessionsCheckDefaultValues() throws Exception {
665665 final JsonNode actual = mapper .readTree (captor .getValue ());
666666 assertEquals (expected , actual );
667667 }
668+
669+ @ Test
670+ public void testPixActionQrCode () throws Exception {
671+ Client client = createMockClientFromFile ("mocks/checkout/pixQrCodeResponse.json" );
672+
673+ PaymentRequest paymentRequest = new PaymentRequest ();
674+ paymentRequest .setAmount (new Amount ().currency ("EUR" ).value (100000L ));
675+ paymentRequest .lineItems (
676+ Arrays .asList (
677+ new LineItem ().id ("Item 1" ).amountIncludingTax (40000L ),
678+ new LineItem ().id ("Item 2" ).amountIncludingTax (60000L )));
679+ paymentRequest .shopperName (new Name ().firstName ("Jose" ).lastName ("Silva" ));
680+ paymentRequest .setPaymentMethod (
681+ new CheckoutPaymentMethod (new PixDetails ().type (PixDetails .TypeEnum .PIX )));
682+ PaymentsApi checkout = new PaymentsApi (client );
683+ PaymentResponse paymentResponse = checkout .payments (paymentRequest );
684+ assertEquals ("8815658961765250" , paymentResponse .getPspReference ());
685+ assertEquals (PaymentResponse .ResultCodeEnum .PENDING , paymentResponse .getResultCode ());
686+
687+ assertNotNull (paymentResponse .getAction ());
688+ final CheckoutQrCodeAction qrCodeAction = paymentResponse .getAction ().getCheckoutQrCodeAction ();
689+ assertNotNull (qrCodeAction );
690+ assertEquals (CheckoutQrCodeAction .TypeEnum .QRCODE , qrCodeAction .getType ());
691+ assertEquals ("pix" , qrCodeAction .getPaymentMethodType ());
692+ assertEquals ("DMhpN90TFR2e7TzwHYRFkhw4brxm2wHBg" , qrCodeAction .getQrCodeData ());
693+ }
668694}
0 commit comments